SQLParser 解析器分层改造
一、认识解析器 & SQL解析器 1.1、什么是解析器? 解析器是计算机科学和编程语言领域中至关重要的工具,其核心作用是将人类可理解的 “形式化语言”(如代码、数据格式、表达式等)转换为机器可处理的结构,从而实现信息的解析、验证和后续处理。我们需要解析器的原因可以从多个维度来理解。 人类使用的语言(无论是编程语言如 Python、数据格式如 JSON,还是查询语句如 SQL)是结构化的字符串,但机器无法直接理解这种字符串的逻辑含义。 例如,程序员写的x = (a + b) * 3是一串字符,但机器需要知道这是 “先算a+b,再乘以 3,最后赋值给 x” 的运算逻辑,解析器充当这个角色,解析为一个语法树,再按照指定的规则一步步来进行运算。 // 解析器 扫描解析方程 x = (a + b) * 3 得到的语法树AST [=] / \ [x] [*] / \ [+] [3] / \ [a] [b] 解释执行步骤: 1、从根节点 = 开始,表示这是一个赋值操作。 2、左子树 x 是赋值目标,右子树 * 是计算内容。 3、计算 * 时,先计算左子树 +(a...
