本篇文章给大家带来的内容是关于mysql中逻辑查询处理的介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。
查询处理可以分为逻辑查询处理和物理查询处理。
逻辑查询处理表示执行查询应该产生什么样的结果。
物理查询处理表示mysql数据库是如何得到该结果的。
两种查询的方法可能完全不同,但是得到的结果必定是相同的。
1、逻辑查询处理
在sql语言中,第一个被处理的子句总是FROM子句。
//示例 //前面的序号表示执行的顺序 (8) SELECT (9) DISTINCT<select_list> (1) FROM<left_table> (3) <join_type> JOIN <right_table> (2) ON<join_condition> (4) WHERE <where_condition> (5) GROUP BY<group_by_list> (6) WITH {CUBE|ROLLUP} (7) HAVING <having_condition> (10) ORDER BY<order_by_list> (11) LIMIT<limit_number>
可以看到最先执行的是FROM,最后执行的是LIMIT。每个操作都会产生一张虚拟表,该虚拟表作为一个处理的输入。这些虚拟表对用户是透明的,只有最后一步生成的虚拟表才会返回给用户。