【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>
相关推荐
前端摸鱼匠3 分钟前
Vue 3 的v-bind合并行为:讲解v-bind与普通属性合并的规则
前端·javascript·vue.js·前端框架·ecmascript
czlczl200209258 分钟前
利用“延迟关联”优化 MySQL 巨量数据的深分页查询
数据库·mysql
REDcker24 分钟前
浏览器端Web程序性能分析与优化实战 DevTools指标与工程清单
开发语言·前端·javascript·vue·ecmascript·php·js
ACP广源盛1392462567344 分钟前
IX8024与科学大模型的碰撞@ACP#筑牢科研 AI 算力高速枢纽分享
运维·服务器·网络·数据库·人工智能·嵌入式硬件·电脑
Elastic 中国社区官方博客1 小时前
ES|QL METRICS_INFO 和 TS_INFO:为你的时间序列数据建立目录
大数据·数据库·elasticsearch·搜索引擎·信息可视化·全文检索
俺不要写代码1 小时前
数据库:函数
数据库·mysql
2401_882273721 小时前
如何在 CSS 中正确加载本地 JPG 背景图片
jvm·数据库·python
donecoding2 小时前
一个 sudo 引发的血案:npm 全局包权限错乱彻底修复
前端·node.js·前端工程化
曹牧2 小时前
SQL:多个事务同时修改同一索引块
数据库·sql
aXin_ya2 小时前
微服务第八天 Sentinel 四种分布式事务模式
java·数据库·微服务