2014-06-30 4 views
1

Есть ли способ разделить колонку на два?Есть ли способ разделить столбец на два?

Столбец его как этот

BRAND/PRODUCT 

И я хотел, чтобы вставить их в 2 новые столбцы бренда и продукта

Благодаря

+0

Есть ли \ между значениями для бренда и продукта в каждой строке таблицы? –

+1

взгляните на этот ответ: http://stackoverflow.com/questions/2696884/mysql-split-value-from-one-field-to-two – gipinani

ответ

8

Используйте LOCATE, чтобы найти / и SUBSTR, чтобы захватить части строки до и после нее.

UPDATE table 
SET brand = SUBSTR(brand_product, 1, LOCATE('/', brand_product)-1), 
    product = SUBSTR(brand_product, LOCATE('/', brand_product)+1) 
3

По существу разделяет значение поля. «1» в первом получает первый текстовый сегмент, а «-1» - второй сегмент текста.

UPDATE `table` 
    SET `brand` = SUBSTRING_INDEX(`brand_product`, '/', 1), 
     `product` = SUBSTRING_INDEX(`brand_product`, '/', -1); 

Выход:

| brand_product | brand | product | 
+---------------+-------+---------+ 
| one/two  | one | two  | 

См: http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_substring-index

Смежные вопросы