【背景】
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>