【Datagear】使用参数时的If语法

【背景】

Datagear强大的参数功能可以让用户自由定制查询参数,并且在查询条件逻辑中可以使用语法,其中所用最多的语法就是if了。

【语法示例】

datagear中,if的各类语法如下:

<#if 条件></#if>

<#if 条件>...<#else>...</#if>

<#if 条件>...<#elseif 条件>...<#else>...</#if>

条件:

参数名??

当用户填写了参数名对应的值时为true, 否则为false,可用于处理非必填参数。

参数名

布尔参数值为true时。

!参数名

布尔参数值为false时。

参数名 == "..."

参数名 != "..."

字符串参数值等于、不等于。

参数名 == ...

参数名 != ...

参数名 gt ...

参数名 gte ...

参数名 lt ...

参数名 lte ...

数值参数值等于、不等于、大于、大于等于、小于、小于等于。

条件1 || 条件2

条件1 && 条件2

!条件

条件组合:或、与、非。

示例:

sql 复制代码
SELECT NAME, VALUE FROM T_ANALYSIS
WHERE NAME = '${name}'
<#if 最小值??>
AND VALUE >= ${最小值}
<#else>
AND VALUE IS NOT NULL
</#if>
<#if 名称集合??>
AND NAME IN
(
  <#list 名称集合 as item> '${item}' <#sep>,</#sep></#list>
)
</#if>
<#if ascByName>
ORDER BY NAME ASC
</#if>
<#if limitCount??>
limit 0, ${limitCount}
</#if>
相关推荐
xrl20127 分钟前
ruoyi-vue2集成flowable6.7.2后端篇
数据库·ruoyi·flowable·工作流集成
流浪法师1210 分钟前
MyPhishing-Web:AI 驱动的钓鱼邮件检测可视化平台
前端·人工智能
写代码的jiang15 分钟前
【无标题】实战:Vue3 + Element Plus 实现树形选择器全量预加载与层级控制
前端·javascript·vue.js
java1234_小锋17 分钟前
Redis到底支不支持事务啊?
java·数据库·redis
晚烛18 分钟前
实战前瞻:构建高可靠、低延迟的 Flutter + OpenHarmony 智慧交通出行平台
前端·javascript·flutter
WHOVENLY41 分钟前
【javaScript】- 作用域[[scope]]
前端·javascript
来杯三花豆奶1 小时前
Vue3 Pinia 从入门到精通
前端·javascript·vue.js
syt_10131 小时前
设计模式之-工厂模式
javascript·单例模式·设计模式
云和恩墨1 小时前
告别 “事后救火”:7 大前置动作规避 80% 数据库故障
数据库·oracle
卡布叻_星星1 小时前
Docker之Nginx前端部署(Windows版-x86_64(AMD64)-离线)
前端·windows·nginx