MySQL如何使用子字符串从一列中提取数据,并将其放到同一表中同一ID下的另一列中

MySQL如何使用子字符串从一列中提取数据,并将其放到同一表中同一ID下的另一列中,mysql,substring,extract,Mysql,Substring,Extract,假设我们有一张人们喜欢的桌子 id | name | extracted ----------------------------------------- 1 | Roger | ----------------------------------------- 2 | Anthony | ----------------------------------------- 3 | Mar

假设我们有一张人们喜欢的桌子

id      |   name        |       extracted
-----------------------------------------
1       |   Roger       |
-----------------------------------------
2       |   Anthony     |
-----------------------------------------
3       |   Maria       |
-----------------------------------------

我们使用

SELECT SUBSTRING(name, 1, 3) FROM people.name WHERE name like '%thon%' 
它将找到“Anthony”并提取3个第一个字符-因此结果是: 蚂蚁

如何将此结果放在同一id上,使表看起来像

id      |   name        |       extracted
-----------------------------------------
1       |   Roger       |
-----------------------------------------
2       |   Anthony     |       Ant
-----------------------------------------
3       |   Maria       |
-----------------------------------------
试一试


是否要更新表?是的,更新表-但是如何使用子字符串结果进行更新-我无法组合…
update people SET extracted=SUbString(name,1,3),其中的名称类似“%thon%”
——请尝试一下。这是为了什么?这不仅是好奇,而且可能您需要一些更具体的解决方案来保持
name
extracted
的同步?更新people SET extracted=SUBSTRING(name,1,3),其中name像“%thon%”一样-多亏了491243,它可以轻松工作!亲爱的西尔文……我还没有想过名字的同步和提取……现在对我来说已经足够了,我从491243开始……但是你的想法值得考虑!
UPDATE people SET extracted = LEFT(`name`,3) WHERE `name` like '%thon%'