gpt4 book ai didi

sql - 我想使用CASE语句更新sql server 2005中的一些记录

转载 作者:行者123 更新时间:2023-12-01 16:33:00 24 4
gpt4 key购买 nike

UPDATE dbo.TestStudents  
SET LASTNAME =
( CASE
WHEN (LASTNAME = 'AAA') THEN 'BBB'
WHEN (LASTNAME = 'CCC') THEN 'DDD'
WHEN (LASTNAME = 'EEE') THEN 'FFF'
ELSE (LASTNAME)
END )

该语句可以达到目的,但 else 条件会扫描表中的每条记录。有什么办法可以让不受影响的行保持原样吗?

最佳答案

添加 WHERE 子句

UPDATE dbo.TestStudents  
SET LASTNAME = CASE
WHEN LASTNAME = 'AAA' THEN 'BBB'
WHEN LASTNAME = 'CCC' THEN 'DDD'
WHEN LASTNAME = 'EEE' THEN 'FFF'
ELSE LASTNAME
END
WHERE LASTNAME IN ('AAA', 'CCC', 'EEE')

关于sql - 我想使用CASE语句更新sql server 2005中的一些记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15766102/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com