我想使用一个case语句更新表中的多个列,但是我找不到如何执行此操作的方法(甚至有可能)。我提出了以下无效的参考查询:
UPDATE tablename SET CASE name WHEN 'name1' THEN col1=5,col2='' WHEN 'name2' THEN col1=3,col2='whatever' ELSE col1=0,col2='' END;
有什么方法可以通过有效的SQL达到预期的结果吗?
UPDATE tablename SET col1 = CASE WHEN name = 'name1' THEN 5 WHEN name = 'name2' THEN 3 ELSE 0 END , col2 = CASE WHEN name = 'name1' THEN '' WHEN name = 'name2' THEN 'whatever' ELSE '' END ;