在WHERE子句中具有多个条件的Sql UPATE(Sql UPATE with multiple conditions in WHERE clause)
UPDATE Table1
SET [Marks] =
(
SELECT
CASE STATEMENTS
FROM Table2 T2
WHERE Table1.ID = T2.ID)
)
上面的UPDATE语句工作正常,但如果ID不匹配,则为'Marks'插入NULL值。 但是如果Table1和Table2 ID不匹配,我想保留Table1中Marks的原始值。 我如何在我的代码中实现它。
我也试过使用WHERE EXISTS但仍然没有运气。 我想知道它的确切用法。
任何帮助非常感谢。
UPDATE Table1 SET [Marks] = ( SELECT CASE STATEMENTS FROM Table2 T2 WHERE Table1.ID = T2.ID) )The above UPDATE statements works fine, but if the ID doesn't match then it insert NULL value for 'Marks'. But i wanted to keep the original value for Marks in Table1 if the Table1 and Table2 ID doesn't match. How do i implement that in my code please.
i also tried using WHERE EXISTS BUT STILL no luck. I wonder whats the exact use of it.
Any help much appreciated.
最满意答案
UPDATE Table1 SET [Marks] = ( SELECT CASE STATEMENTS FROM Table2 T2 WHERE Table1.ID = T2.ID) ) WHERE id IN (SELECT id FROM table2) UPDATE Table1 SET [Marks] = ( SELECT CASE STATEMENTS FROM Table2 T2 WHERE Table1.ID = T2.ID) ) WHERE id IN (SELECT id FROM table2)更多推荐
发布评论