mysql中的UPDATE TABLE split()

时间:2013-09-13 18:56:07

标签: mysql

我如何做以下事项:

code    code_base
en-DE   en
yue-mn  yue
en      en

在python中,我会这样做:

code_base = code.split('-')[0]

我如何在伪代码中使用mysql中的等效代码:

UPDATE table SET code_base=code.split('-')[0]

3 个答案:

答案 0 :(得分:3)

您可以使用SUBSTRING_INDEX执行拆分:

UPDATE table 
    SET code_base= SUBSTRING_INDEX(code, '-', 1)

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

答案 1 :(得分:2)

没有办法在MySQL中“拆分”一个字符串。拆分通常会返回一个MySQL没有的数组。

您可以做的是,从0获取子字符串直到第一个-。查看SUBSTRING_INDEX

UPDATE table SET code_base=SUBSTRING_INDEX(code, '-', 1)

答案 2 :(得分:0)

试试这个:

UPDATE table SET code_base= LEFT(code, LOCATE('-', code)-1)