尧图网站建设 尧图网络
  • 首页
  • 关于我们
  • 服务项目
  • 案例展示
  • 建站流程
  • 资讯中心
  • 联系我们
首页/资讯中心/详情

如何通过‘语法配置’来‘解析SQL’代码

如何通过‘语法配置’来‘解析SQL’代码
📅 发布时间:2026/6/20 21:10:05

开源软件 ZGLanguage 通过语法配置,便可以对SQL代码进行解析,如下所示。

当然,不同数据库之间会存在不同的语法特点或方言。

此语法配置实例只囊括了常见的SQL语法结构,用户可以在此基础上根据具体情况进行修改使用。

__DEF_FUZZY__ N __DEF_DEBUG__ N __DEF_CASE_SENSITIVE__ N __DEF_LINE_COMMENT__ -- __DEF_LINES_COMMENT__ /* */ __DEF_STR__ __NAME__ <1,100> [1,1]ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz_?? [0,100]ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_?? [NO] select inner left join on from where group order by having union all with as table __DEF_STR__ __FLOAT__ <1,100> [1,50]0123456789 [1,1]. [1,50]0123456789 __DEF_STR__ __INT__ <1,100> [1,100]0123456789 __DEF_SUB_PATH__ __STRING__ 1 : | ' : | __ANY__ : | ' __DEF_SUB_PATH__ __DATE_STRING__ 1 : | date : | __STRING__ __DEF_SUB_PATH__ __VAR_NAME__ 1 : | $ : | { : | __NAME__ : | } __DEF_SUB_PATH__ __CASE_WHEN__ 1 : @ | case N : @ | when : @ | __EXPR__ : @ | then : @ | __EXPR__ 1 : @ CAN_SKIP | else : @ CAN_SKIP | __EXPR__ : @ | end __DEF_SUB_PATH__ __DECIMAL__ 111 : | decimal 0 : | ( 01 : | __INT__ 00 : | , 00 : | __INT__ 01 : | ) __DEF_SUB_PATH__ __X_CHAR__ 11 : | varchar : + nvarchar : + char : + varchar2 : + nvarchar2 0 : | ( 0 : | __INT__ 0 : | ) __DEF_SUB_PATH__ __CAST_AS__ 1 : | cast : | ( 1 : | __EXPR__ : | as : | date : + int : + double : + float : + bigint : + __X_CHAR__ : + __DECIMAL__ 1 : | ) __DEF_SUB_PATH__ __FUNCTION__ 11 : @ | __NAME__ : @ + sum : @ + avg : @ + ifnull : @ + coalesce : @ + count : @ + row_number : @ + rank : @ + dense_rank : @ | ( : @ CAN_SKIP | distinct NN : @ CAN_SKIP | __EXPR__ ee : @ CAN_SKIP | , 11 : @ | ) 0 : @ | over 0 : @ | ( 0 : @ CAN_SKIP | __PARTITION_BY__ 0 : @ CAN_SKIP | __ORDER_BY__ 0 : @ | ) __DEF_SUB_PATH__ __SET__ 1 : | ( N : | __STRING__ : + __INT__ : + __FLOAT__ e : | , 1 : | ) __DEF_EXPR__ __EXPR__ __ELE__ null __ELE__ * __ELE__ __NAME__ __ELE__ __INT__ __ELE__ __FLOAT__ __ELE__ __DATE_STRING__ __ELE__ __CASE_WHEN__ __ELE__ __STRING__ __ELE__ __SET__ __ELE__ __CAST_AS__ __ELE__ __FUNCTION__ __OPR__ between 1 __OPR__ and 1 __OPR__ or 1 __OPR__ like 2 __OPR__ = 2 __OPR__ <> 2 __OPR__ != 2 __OPR__ > 2 __OPR__ >= 2 __OPR__ < 2 __OPR__ <= 2 __OPR__ in 2 __OPR__ not in 2 __OPR__ + 3 __OPR__ - 3 __OPR__ * 4 __OPR__ / 4 __OPR__ || 4 __OPR__ . 7 __//__ __BEF__ not exists __//__ __BEF__ exists __BEF__ - __BEF__ + __AFT__ is null __AFT__ is not null __DEF_SUB_PATH__ __TABLE_NAME__ 1 : xx @ | __NAME__ + : x1 @ | __VAR_NAME__ : x2 @ + __NAME__ : x3 @ | . : x4 @ | __NAME__ 1 : x5 @ CAN_SKIP | as : x6 @ CAN_SKIP | __NAME__ __DEF_SUB_PATH__ __WHERE__ 1 : | where N : | __EXPR__ : + __EXISTS_SELECT__ e : | and __DEF_SUB_PATH__ __GROUP_BY__ 11 : | group : | by NN : | __EXPR__ ee : | , 01 : | having 0 : | __EXPR__ __DEF_SUB_PATH__ __ORDER_BY__ 1 : @ | order : @ | by N : @ | __EXPR__ : @ CAN_SKIP | desc : @ + asc e : @ | , __DEF_SUB_PATH__ __PARTITION_BY__ 1 : | partition : | by N : | __EXPR__ e : | , __DEF_SUB_PATH__ __DISTRIBUTED_BY__ 1 : | distributed : | by : | ( N : | __EXPR__ e : | , 1 : | ) __DEF_SUB_PATH__ __SUB_SELECT__ 1 : @ | ( : @ | __UNION_SELECT__ : @ | ) : @ CAN_SKIP | as : @ CAN_SKIP | __NAME__ __DEF_SUB_PATH__ __EXISTS_SELECT__ 01 : | NOT 1 : | EXISTS : | ( : | __SELECT__ : | ) __DEF_SUB_PATH__ __ON_AND__ 1 : | on N : | __EXPR__ e : | and __DEF_SUB_PATH__ __JOIN_TABLE__ 11 : | join ++ : | inner : | join ++ : | left : | join ++ : | left : | out : | join ++ : | right : | join ++ : | right : | join ++ : | right : | out : | join ++ : | full : | join ++ : | full : | out : | join ++ : | , 11 : | __TABLE_NAME__ : + __SUB_SELECT__ 01 : | __ON_AND__ __DEF_SUB_PATH__ __SELECT__ 11 : @ | select : @ CAN_SKIP | distinct NN : @ | __EXPR__ : @ CAN_SKIP | as : @ CAN_SKIP | __NAME__ ee : @ | , 01 : @ | from 0 : @ | __TABLE_NAME__ : @ + __SUB_SELECT__ 0N : @ CAN_SKIP | __JOIN_TABLE__ 01 : @ CAN_SKIP | __WHERE__ 0 : @ CAN_SKIP | __GROUP_BY__ 0 : @ CAN_SKIP | __ORDER_BY__ 0 : @ CAN_SKIP | __DISTRIBUTED_BY__ __DEF_SUB_PATH__ __UNION_SELECT__ 1 : | __SELECT__ N : @ CAN_SKIP | union : @ CAN_SKIP | all : @ CAN_SKIP | __SELECT__ __DEF_PATH__ __SQL_SELECT__ 1 : | __UNION_SELECT__ : | ; __DEF_PATH__ __SQL_CREATE_VIEW__ 1 : | create : | view 1 : | __NAME__ + : | __NAME__ : | . : | __NAME__ + : | __VAR_NAME__ : | . : | __NAME__ 1 : | as : | __SELECT__ : | ; __DEF_PATH__ __SQL_CREATE_TABLE__ 1 : | create 1 : | table + : | temp : | table 1 : | __NAME__ + : | __NAME__ : | . : | __NAME__ + : | __VAR_NAME__ : | . : | __NAME__ 1 : | as : | __SQL_SELECT__ : + __WITH_AS_SELECT__ __DEF_PATH__ __SQL_INSERT_INTO__ 11 : | insert : | into 11 : | __NAME__ ++ : | __NAME__ : | . : | __NAME__ ++ : | __VAR_NAME__ : | . : | __NAME__ 01 : | ( 0N : | __NAME__ 0e : | , 01 : | ) 1 : | __SQL_SELECT__ : + __WITH_AS_SELECT__ __DEF_PATH__ __WITH_AS_SELECT__ 11 : @ | with : @ | __NAME__ : @ | as : @ | ( : @ | __UNION_SELECT__ : @ + __WITH_AS_SELECT__ : @ | ) 0N : @ | , 0 : @ | __NAME__ 0 : @ | as 0 : @ | ( 0 : @ | __UNION_SELECT__ : @ + __WITH_AS_SELECT__ 0 : @ | ) 11 : @ | __UNION_SELECT__ : @ | ;

ZGLanguage 的开源地址:

https://gitee.com/zgl-20053779/zglanguage

相关新闻

  • 29、网络文件系统(NFS)的锁管理与性能分析
  • 零工风险如何“防患于未然”?盖雅AI风控与四流合一体系深度解析
  • 职业迷茫与协议化服务助力发展

最新新闻

  • 2026莆田本地正规瓷砖空鼓维修服务商盘点|无损免拆砖修复,全域上门售后有保障 - 宅安选房屋修缮
  • 嵌入式GUI开发实战:emWin TREEVIEW控件从入门到精通
  • 2026无锡装修,家里有小孩最怕甲醛超标!我选装修公司的环保标准 - 装企自媒体训练营辉哥
  • 初等嵌入与拉弗代数的构造原理及应用
  • 2026年6月目前热门的活性炭吸附供应厂家怎么选择,布袋除尘器/水帘除尘器/静电除尘器,活性炭吸附产品口碑推荐 - 品牌推荐师
  • 2026 北京翡翠回收避坑指南:实体老店专业鉴品,定价贴合市场主流行情 - 薛定谔的梨花猫

日新闻

  • Visual C++运行库修复终极指南:5分钟快速解决Windows软件启动错误
  • 手把手教你构建统计局地区经济数据爬虫:从环境搭建到数据持久化全指南
  • 2026多Agent深度解析:用AI团队替代单一模型,四种架构实战落地

周新闻

  • Visual C++运行库修复终极指南:5分钟快速解决Windows软件启动错误
  • 手把手教你构建统计局地区经济数据爬虫:从环境搭建到数据持久化全指南
  • 2026多Agent深度解析:用AI团队替代单一模型,四种架构实战落地

月新闻

  • 【总结】入门篇:50句话让你记住架构核心概念
  • WeChatMsg技术方案解析:实现Mac微信数据自主管理的完整解决方案
  • WeChatMsg:革新性微信数据备份方案,打造你的专属数字记忆库

关于尧图

  • 公司简介
  • 团队介绍
  • 企业文化
  • 荣誉资质

服务项目

  • 定制开发
  • 电商建站
  • UI 设计
  • 运维服务

快速链接

  • 案例展示
  • 建站流程
  • 常见问题
  • 资讯中心

联系方式

  • 📍北京市朝阳区互联网产业园 A 座 10 层
  • 📞400-888-8888
  • ✉️contact@rkmt.cn
  • 🕐周一至周日 9:00-21:00

© 2024 北京尧图网络科技有限公司 版权所有 | 京 ICP 备 XXXXXXXX 号