sql语句转化成语法树
时间: 2023-11-21 08:13:37 浏览: 263
将SQL语句转化成语法树的过程可以分为几个步骤。首先,SQL语句会经过词法分析器进行分词操作,将SQL语句分解成不同的词法单元。接下来,语法解析器会根据SQL语句的语法规则,将这些词法单元组织成一棵抽象语法树(AST)。这棵抽象语法树可以被简单理解为逻辑执行计划。在这个过程中,查询优化器会利用一些规则对逻辑计划进行优化,例如谓词下推和剪枝等操作,最终得到一棵优化后的逻辑计划树。接下来,逻辑计划树会被转换成可执行的物理计划,包括数据扫描和数据聚合等操作。最后,根据物理计划,SQL语句会按照计划一步一步地执行。这就是将SQL语句转化成语法树的过程。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [SQL 引擎如何把语句转换为一个抽象语法树?](https://blog.csdn.net/csdnnews/article/details/118980519)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [Presto源码解析—从SQL到AST抽象语法树](https://blog.csdn.net/qq_38348841/article/details/120346328)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文