EXISITS这个好难理解,讲下sql背后做了什么吧

来源:4-3 单行和多行子查询语法规则(重点)

慕神8405820

2020-04-06 18:12:13

EXISITS这个好难理解,讲下sql背后做了什么吧

写回答

1回答

好帮手慕笑蓉

2020-04-07

同学,你好。EXISTS子句的返回值是一个BOOL值,以下面的sql语句为例,分析器先找到关键字SELECT,然后跳到FROM关键字将t_emp表导入内存,并通过指针找到第一条记录,接着找到WHERE关键字计算它的表达式,如果为真那么把这条记录装到一个虚表当中,指针再指向下一条记录。如果为假那么指针直接指向下一条记录,而不进行其它操作。一直检索完整个表,并把检索出来的虚拟表返回给用户,EXISTS是表达式的一部分,查询其后的SELECT语句,存在则返回真,否则返回假,结果供WHERE关键字进行条件判断,从而筛选出t_emp表的数据。

http://img.mukewang.com/climg/5e8c0d6c09aeb15110580243.jpg

如果解决了你的疑惑,请采纳,祝学习愉快~ 

0

0 学习 · 2669 问题

查看课程