单条sql解析流程图
2017-02-22 22:10:43 0 举报
单条SQL解析流程图主要包括以下几个步骤: 1. 词法分析:将SQL语句拆分成一个个的词汇单元,如关键字、标识符等。 2. 语法分析:根据预定义的语法规则,将词法分析后的结果组合成一棵抽象语法树(AST)。 3. 语义分析:对AST进行遍历和检查,确保SQL语句符合语义规范,如表名、列名等是否存在。 4. 优化器:对AST进行优化,生成执行计划,以提高查询性能。 5. 执行引擎:根据优化后的执行计划,执行SQL语句,获取查询结果。 整个流程图展示了从输入SQL语句到输出查询结果的整个过程,各个阶段之间相互依赖,共同完成SQL解析任务。
作者其他创作
大纲/内容
是
否
将表字段信息存储起来
取出order中的表达式
两个表达式是否都是表的字段
取出where表达式
标记为where场景
join中是否存在子查询
取出select中的表达式
开始(输入sql和默认schema)
标记为join场景
根据表元数据信息找到对应字段信息
是否是子查询
是否是两元表达式
sql切割,对各个plainSelect解析
是否是select查询语句
取出join子句
取出grop中的表达式
判断from的表是否是子查询
结束,并输入表字段信息在场景下出现的次数
是否是Column类型的表达式
是否是in表达式
取出join表达式
是否是plainSelect语句
根据表名,查询该表元数据信息,存储相应别名
取出having中的表达式
0 条评论
下一页
为你推荐
查看更多