当前位置: 首页 > news >正文

无极低码SQL模板引擎使用教程示例,自己手撸一个sql模板引擎进行动态sql生成。

无极低码 :https://wheart.cn

无极低码SQL模板使用教程

一、模板结构与规则

无极低码SQL模板通过简洁的Markdown格式,使SQL语句具有更强的灵活性和适应性,简化了根据业务需求定制SQL的过程。

无极低码SQL模板是一种基于Markdown格式的特殊SQL语句表示方式,它利用符号作为动态条件的标识符,使得SQL语句能够在运行时根据变量值动态生成。

下面是无极低码SQL模板的一般结构:

select方法名,用于定位执行语句
===分隔符
sql语句,为查询输出前端的值,where 1=1 结束 也可以直接跟参数
∮bypositioncode为动态参数
与下一个sql之间使用“;”分割
∮byIn_id表示非空时拼接如下sql
 and id in('#byIn_id#')“#byIn_id#”会被替换为实际值
动态拼接时间查询条件
∮bystartpubTime&&byendpubTime
and  pub_time between '#bystartpubTime#' and '#byendpubTime#'
动态拼接模糊查询
∮byname
and  name like'%#byname#%'

二、动态条件的应用

  • 对于每个开头的条件行,如果关联的变量存在且非空,那么该行条件将被包含在最终执行的SQL查询中。
  • 如果变量不存在或为空,则对应的SQL条件将被忽略。

三、示例sql模板

select
===
select positioncode ,id,positionname,picurl ,pichref ,pictitle ,picdes ,sort  from travelpositionpics where 1=1 
∮bypositioncodeand positioncode=#bypositioncode#
∮bypositionnameand positionname='#bypositionname#'
∮bypicurland picurl='#bypicurl#'
∮bypichrefand pichref='#bypichref#'
∮bypictitleand pictitle='#bypictitle#'
∮bypicdesand picdes='#bypicdes#'
∮bysortand sort=#bysort#
;selectOneByid
===
select positioncode ,picurl ,pichref ,pictitle ,picdes ,sort  from travelpositionpics where 1=1 
∮bypositioncodeand positioncode=#bypositioncode#
∮bypicurland picurl='#bypicurl#'
∮bypichrefand pichref='#bypichref#'
∮bypictitleand pictitle='#bypictitle#'
∮bypicdesand picdes='#bypicdes#'
∮bysortand sort=#bysort#
;delete
===
delete  from travelpositionpics where 1=1 
∮bypositioncodeand positioncode=#bypositioncode#
∮bypicurland picurl='#bypicurl#'
∮bypichrefand pichref='#bypichref#'
∮bypictitleand pictitle='#bypictitle#'
∮bypicdesand picdes='#bypicdes#'
∮bysortand sort=#bysort#
∮byIn_idand id in('#byIn_id#')
;insert
===
insert ignore into travelpositionpics(positioncode,positionname,picurl,pichref,pictitle,picdes,sort) VALUES(#positioncode#,'#positionname#','∮#picurl#','#pichref#','#pictitle#','#picdes#',#sort#);update
===
update travelpositionpics set 
∮positioncodepositioncode=#positioncode#,
∮positionnamepositionname='#positionname#',
∮picurlpicurl='#picurl#',
∮pichrefpichref='#pichref#',
∮pictitlepictitle='#pictitle#',
∮picdespicdes='#picdes#',
∮sortsort=#sort#where 1=1 
∮bypositioncodeand positioncode='#bypositioncode#'
∮bypicurland picurl='#bypicurl#'
∮bypichrefand pichref='#bypichref#'
∮bypictitleand pictitle='#bypictitle#'
∮bypicdesand picdes='#bypicdes#'
∮byidand id=#byid#
∮bysortand sort='#bysort#'
http://www.lryc.cn/news/324791.html

相关文章:

  • Python学习(一)
  • Day62:WEB攻防-PHP反序列化CLI框架类PHPGGC生成器TPYiiLaravel等利用
  • 运动想象 (MI) 迁移学习系列 (14) : EEGNet-Fine tuning
  • java中获取字符串中满足正则表达式的元素集合
  • HTTPS总结
  • Linux之基础IO
  • 【SpringSecurity】十六、OAuth2.0授权服务器、资源服务器的配置(理论部分)
  • AtCoder Beginner Contest 346
  • Arduino智能家居
  • 吴恩达2022机器学习专项课程(一) 3.3 成本函数的公式
  • Day56-LNMP架构扩展为集群模式实战精讲
  • Windows 设置多显示器显示
  • 语言模型的原理、实战与评估
  • 【Android 内存优化】Koom核心内存指标分析
  • Spring相关框架八股
  • RK3588开发笔记-v1.3.0-SDK文件系统分区添加
  • 架构评估方法相关知识总结
  • 常用ES标准
  • Http中Host,Referer,Origin和Access-Control-Allow-Origin
  • UDP实现聊天室
  • 排序算法:如冒泡排序、插入排序、选择排序、快速排序、归并排序
  • 深度学习pytorch——GPU加速(持续更新)
  • StringRedisTemplate
  • Linux cp、mv命令显示进度条
  • 在Java中使用Apache POI保留Excel样式合并多个工作簿
  • Nomachine远程黑屏通用处理方法
  • 基于51单片机数控直流电压源proteus仿真LCD显示+程序+设计报告+讲解视频
  • [Linux]文件缓冲区
  • ARM:按键中断
  • JavaScript高级(五)--柯西化函数