用于从列值中删除(数字)的SQL

时间:2015-08-07 11:02:35

标签: mysql sql

我有一个名为members的表列,包含10k +记录 一些成员名称旁边有一个数字: 约翰史密斯(12) 简·多伊(3)

是否有一个sql语句,我可以用来删除'(数字)'来自列中的所有值?

2 个答案:

答案 0 :(得分:4)

如果使用开头,那么您可以这样做:

update table t
    set name = substring_index(name, ' (', 1)
    where name regexp ' ([0-9]+)';

我先将select作为select name, substring_index(name, ' (', 1) from table t where name regexp ' ([0-9]+)'; 进行检查:

perf_event_open()

答案 1 :(得分:0)

您可以尝试使用以下字符串函数。这是一个工作示例http://sqlfiddle.com/#!9/20544/1

SELECT LEFT(NAME,INSTR(NAME,'(') - 1) New_Name from test;