简体   繁体   中英

Difference between these two update SQL statements in Oracle?

What's the difference between these two update SQL statements in Oracle

First:

UPDATE t1 
    SET    col1 = 'Y' 
    WHERE  EXISTS (SELECT * 
               FROM   t2 
               WHERE  t1.p1 = t2.p1 
                      AND t1.p2 = t2.p2 
                      AND t2.col3 = 'a' 
                      AND t1.p1 = 'b' 
                      AND t1.p2 = 'c') 

Second:

UPDATE t1 
SET    col1 = 'Y' 
WHERE  EXISTS (SELECT * 
           FROM   t2 
           WHERE  t1.p1 = t2.p1 
                  AND t1.p2 = t2.p2 
                  AND t2.col3 = 'a') 
   AND t1.p1 = 'b' 
   AND t1.p2 = 'c'  

完全没有区别-它们具有相同的含义

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM