我需要删除第三个连字符(-)或最后连字符从我的表上的每一个记录。这是样本数据
2009年-12245-5432112310000-4 2009年-12245-5431212320000- 2009年-12245-H 196812310000- 2009年-12245-C 026512310000-0
更新后的输出应该是这样的。
2009年-12245-54321123100004 2009年-12245-5431212320000 2009年-12245-H 196812310000 2009年-12245-C 0265123100000
有什么mysql函数可以与UPDATE命令一起使用吗?我知道replace()命令,但我认为它没有要替换的特定位置的参数。
谢谢
发布于 2015-07-30 07:29:21
您必须使用CONCAT()和SUBSTRING_INDEX()的组合。请尝试以下查询:
UPDATE tblName
SET column = CONCAT(SUBSTRING_INDEX(column,'-',3),SUBSTRING_INDEX(column,'-',-1));它将连接第一个子字符串和最后一个子字符串。以下是产出:
+---------------------------+
| 2009-12245-54321123100004 |
| 2009-12245-5431212320000 |
| 2009-12245-H196812310000 |
| 2009-12245-C0265123100000 |
+---------------------------+发布于 2015-07-30 07:25:55
发布于 2015-07-30 07:20:09
试试这个:
UPDATE `table` SET `column` = CONCAT(SUBSTRING_INDEX(`column`, '-', 3), SUBSTRING_INDEX(`column`, '-', -1));https://stackoverflow.com/questions/31717327
复制相似问题