MySQL:在单个查询中更新列的多个值

时间:2015-05-30 14:32:27

标签: mysql mysql-workbench

我有一个名为misc_jobs的表,其中有一个名为Title的列,其中Ii有多个值数据,例如:Driver,Engineer,Doctor,Teacher,Joker等。

我想更改一些值,因为Driver,Engneer,Doctor应分别转换为Drv,Eng,Doc。

如何在单个查询中更新MySQL?

2 个答案:

答案 0 :(得分:3)

您可以像这样使用CASE

UPDATE misc_jobs
SET Title = CASE 
  WHEN client='Driver' THEN 'Drv'
  WHEN client='Engineer' THEN 'Eng'
  WHEN client='Doctor' THEN 'Doc'
END;

答案 1 :(得分:1)

您需要使用CASE声明。像

这样的东西
UPDATE misc_jobs SET Title =  
CASE
WHEN Title = 'Doctor' THEN 'Doc'
WHEN Title = 'Driver' THEN 'Drv'
WHEN Title = 'Engineer' THEN 'Eng'
WHEN Title = 'Teacher' THEN 'Tch'
WHEN Title = 'Joker' THEN 'Jok'
END;