2012-04-03 2 views
1

Ich habe eine Tabelle mit Spalte zum Speichern von Produkt-Code.Aktualisierung aller Spaltenwerte durch Hinzufügen eines Char mit MySQL-Abfrage

| product_id | Product-name | product_code| 
    | 1  | soap   | QTI4589  | 
     2   abc   DRT45869 
     3   xyz   IND458 

Ich möchte alle Werte in der Spalte product_code mit QTY-4589 aktualisieren, DRT-45869, IND-458 ...

Mittel setzen wollen "-" zwischen Code und die Nummer.

Versucht mit replace() mysql-Funktion funktioniert aber nicht. Bitte helfen Sie mir, wie das geht.

Antwort

0

Haben Sie versucht, die INSERT(str,pos,len,newstr) mysql Funktion ???

UPDATE table_name SET product_code= INSERT (product_code,4,1,"-") WHERE 1 
2

Sie können mit einigen MySQL-Funktionen tun CONCAT(), LEFT(), MID(), LENGTH()

unten Versuchen:

UPDATE table SET product_code=CONCAT(LEFT(product_code,3),'-',MID(product_code,4,LENGTH(product_code))) 
1

Ist der Code immer drei Zeichen? Wenn ja, können Sie

UPDATE `table` SET `product_code` = CONCAT( 
    SUBSTRING(product_code, 0, 3), 
    '-', 
    SUBSTRING(product_code FROM 4) 
) 
verwenden