Come aggiornare più righe con valori diversi in MySQL?
-
20-09-2019 - |
Domanda
Ho una tabella con una colonna 'A'. Alcune righe hanno 14 cifre per la colonna 'A' e alcune hanno solo 12. Ho bisogno di trasformare tutte le voci a 14 cifre. Il tipo di dati è varchar
desidero aggiornare tutte le righe alla volta (una query), aggiungendo zeri prima della prima cifra, quindi una voce come 012.345,67891 milioni diventerebbe 00.012.345,67891 milioni.
E 'possibile farlo in una singola query? Grazie
Soluzione
Questo dovrebbe fare quello che vuoi:
UPDATE your_table SET column_name = LPAD(column_name, 14, "0")
WHERE LENGTH(column_name) < 14
Altri suggerimenti
solo aggiornare tutte le righe quale lunghezza è 12, e anteporre '00'
UPDATE `table`
SET `col` = '00'+`col`
WHERE LENGTH(`col`) = 12
update table1 set columnA=concat('00',columnA) where char_length(columnA)=12
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow