[英]Update AND select in one statement (with 1 WHERE clause)
How can I simplify the following SQL statement to 1 WHERE
clause: 如何将以下SQL语句简化为1个
WHERE
子句:
SELECT *
FROM tabA
WHERE (colCar IS NULL OR colCar = '')
OR (colBike IS NULL OR colBike = '')
OR (colTrain IS NULL OR colTrain = '')
UPDATE tabA
SET Distance = 999
WHERE (colCar IS NULL OR colCar = '') OR
(colBike IS NULL OR colBike = '') OR
(colTrain IS NULL OR colTrain = '')
This statement makes no sense, but it is working fine. 该语句没有任何意义,但可以正常工作。
I just want avoid to use the WHERE
clause twice. 我只想避免两次使用
WHERE
子句。
Some ideas? 有什么想法吗?
Thanks in advance! 提前致谢! Mike
麦克风
SQL Server SQL服务器
SELECT *
FROM tabA
WHERE (colCar IS NULL OR colCar = '')
OR (colBike IS NULL OR colBike = '')
OR (colTrain IS NULL OR colTrain = '')
UPDATE tabA
SET Distance = 999
WHERE (colCar IS NULL OR colCar = '')
OR (colBike IS NULL OR colBike = '')
OR (colTrain IS NULL OR colTrain = '')
Code is working fine 代码工作正常
You can use OUTPUT clause to return updated rows: 您可以使用OUTPUT子句返回更新的行:
UPDATE tabA
SET Distance = 999
OUTPUT deleted.colCar
, inserted.colCar
, deleted.colBike
, inserted.Distance
WHERE (colCar IS NULL OR colCar = '') OR
(colBike IS NULL OR colBike = '') OR
(colTrain IS NULL OR colTrain = '')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.