二元条件元素 IBatisNet
二元条件元素
将一个属性值和静态值或另一个属性值比较,如果条件为真,元素将被包容在查询SQL语句中。
二元条件元素的属性:
perpend——可被覆盖的SQL语句组成部分,添加在语句的前面,该属性为可选。
property——是比较的属性,该属性为必选。
compareProperty——另一个用于和前者比较的属性(必选或选择compareValue属性)
compareValue——用于比较的值(必选或选择compareProperty属性)
二元条件元素为:
<isEqual> |
比较属性值和静态值或另一个属性值是否相等,如果相等则查询条件有效。如: <isEqual prepend="AND" property="status" compareValue="Y"> MARRIED = 'TRUE' </isEqual> |
<isNotEqual> |
比较属性值和静态值或另一个属性值是否不相等,如果不相等则查询条件有效。 |
<isGreaterThan> |
比较属性值是否大于静态值或另一个属性值,如果大于则查询条件有效。如: <isGreaterThan prepend="AND" property="age" compareValue="18"> ADOLESCENT = 'FALSE' </isGreaterThan> |
<isGreaterEqual> |
比较属性值是否大于等于静态值或另一个属性值,如果相等等于则查询条件有效。 |
<isLessThan> |
比较属性值是否小于静态值或另一个属性值,如果小于则查询条件有效。 |
<isLessEqual> |
比较属性值是否小于等于静态值或另一个属性值。如:
|
二元条件元素多用在数字的区间选择上,如年龄、价格、面积等选择上面,也可以用在日期、字符串等类型的比较。如只显示ID<=10的指定ID的用户信息,如果输入值大于10则显示全部用户信息。XML数据映射配置信息为:
<selectid="SelectSysuserDynamic2"parameterClass="System.Collections.IDictionary"resultMap="SysuserResult">
<![CDATA[ SELECT * FROM DEAN.SYSUSER ]]>
<dynamicprepend="WHERE">
<isLessEqualprepend="AND"property="USERID"compareValue="10">
USERID = #USERID#
</isLessEqual>
</dynamic>
</select>