Oracle EXISTS用法
昨天在写一段Oracle SQL的时候,本来想直接用SQL写的,后面遇到了点问题,不了解该怎么写下去了,于是就换成了用存储过程来写,搞了个游标变量,然后搞了个循环搞定了,今天导师指导的时候看到了,指出了问题。
SQL EXISTS
SQL是关于集合的,要以面向集合的思维方式来思考。在编写代码时,我似乎一点也没想到这个,搞一个变量,然后开一个循环开始按记录来修改。还是要转变一下思路,从集合角度考虑。
EXCISTS用法直接写例子吧:
1 | select * from t1 where exists ( select null from t2 where y = x ) |
这里的用法相当于运用循环控制结构后的如下语句:
1 | for x in ( select * from t1 ) |
思路有点奇特