SQL删除字符串中逗号后面的所有内容

SQL删除字符串中逗号后面的所有内容

我有一个 mysql 表,用于存储一些数据。其中一列存储包含逗号的字符串。我想删除此字符串中的所有内容(包括逗号)并保存它,但我无法让它工作。我尝试了这里的一些解决方案,但我不明白substring在这种情况下如何工作。
示例表数据:

|------
|id|Name
|------
|6695|Aalen (Württemberg)
|7001|Achern (Baden)
|7133|Aach (Hegau)
|8975|Abenberg, Mittelfranken
|17223|Abbensen, Kreis Peine
|17323|Abbenrode, Kreis Braunschweig
|17608|Abbensen, Han

我想得到这样的结果:

|------
|id|Name
|------
|6695|Aalen (Württemberg)
|7001|Achern (Baden)
|7133|Aach (Hegau)
|8975|Abenberg
|17223|Abbensen
|17323|Abbenrode
|17608|Abbensen

大约有 60,000 行,因此更快的解决方案会更好。

答案1

你必须使用

并执行以下操作:

UPDATE mytable
SET mycolumn = SUBSTRING_INDEX(mycolumn,',', 2)

相关内容