我一直在与一家在世界各地转换数据库的公司合作。他们在表格的列内的文本末尾放置了一组随机文本,我希望尽可能轻松地删除文本。我不想手工删除数以千计的条目。
例如,我有一个名为“用户”的表 表“users”有许多不同的字段,但我要修改的字段称为“username” 对于该列,我们有以下条目:
我可以进入每一行并更改每个条目,以便显示
但我仅仅在那个领域就有4,000个。相当耗时且容易出错!
我已经尝试进入phpMyAdmin并进行搜索和替换,但没有任何改变。
我试过了:
查找:ABC% 更换:def 列:用户名
预览显示所有表,但原始字符串和替换字符串是相同的;什么都没有被取代
我试过了:
查找:ABC * 更换:def 列:用户名
预览不显示任何内容。
提前致谢!
答案 0 :(得分:1)
由于phpMyAdmin允许您执行任何查询,为什么不执行
UPDATE users SET username = SUBSTRING(username, 0, INSTR(username, '-') - 1);
答案 1 :(得分:0)
由于破折号字符用作分隔符,因此您可以使用SQL查询和SUBSTRING_INDEX:
UPDATE users
SET username = SUBSTRING_INDEX(username, '-', 1)
请查看小提琴here。