如何使用phpMyAdmin删除mySQL表中字段中的随机文本

时间:2015-09-13 19:16:10

标签: mysql phpmyadmin

我一直在与一家在世界各地转换数据库的公司合作。他们在表格的列内的文本末尾放置了一组随机文本,我希望尽可能轻松地删除文本。我不想手工删除数以千计的条目。

例如,我有一个名为“用户”的表 表“users”有许多不同的字段,但我要修改的字段称为“username” 对于该列,我们有以下条目:

  • 萨姆ABC123
  • Bob-ABC234
  • 乔-ABC578

我可以进入每一行并更改每个条目,以便显示

  • 萨姆
  • Bob

但我仅仅在那个领域就有4,000个。相当耗时且容易出错!

我已经尝试进入phpMyAdmin并进行搜索和替换,但没有任何改变。

我试过了:

查找:ABC% 更换:def 列:用户名

预览显示所有表,但原始字符串和替换字符串是相同的;什么都没有被取代

我试过了:

查找:ABC * 更换:def 列:用户名

预览不显示任何内容。

提前致谢!

2 个答案:

答案 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