首先,MyBatis中的criteria是用于构造SQL语句的查询条件的一种方式。其中,or语法可以使查询条件在多个条件之间取或(或者)的关系。具体用法如下:
1. or语法示例一
Example example = new Example(User.class);
Example.Criteria criteria = example.createCriteria();
criteria.andEqualTo("gender", "女");
Example.Criteria anotherCriteria = example.createCriteria();
anotherCriteria.andLike("name", "张%");
example.or(anotherCriteria);
List<User> users = userMapper.selectByExample(example);
以上示例为使用MyBatis的Example对象进行or语法查询的示例,其中第一个条件为查询gender为女的用户,第二个条件为查询name以“张”开头的用户,两个条件之间使用or连接,最后查询满足条件的用户列表。
2. or语法示例二
<select id="getUsersByGenderOrName" parameterType="User" resultType="User">
SELECT *
FROM user
WHERE (gender = #{gender} OR name like #{name})
</select>
以上示例为使用MyBatis的XML映射文件进行or语法查询的示例,其中查询条件为查询gender为传入参数gender的用户或者name以传入参数name为开头的用户,两个条件之间使用or连接,最终返回满足条件的用户列表。
通过以上两个示例,可以看出,在MyBatis中使用criteria进行or语法查询相对更加灵活,且可以很好地避免SQL注入等问题。而使用XML映射文件进行or语法查询则更加方便,写起来更加直观。需要根据实际情况进行选择。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:MyBatis中criteria的or(或查询)语法说明 - Python技术站