Mybatis动态sql的实现之常用标签:

标签 解释以及应用场景
与java的条件判断f语句实现效果一样;
应用场景:常用于判断参数状态
动态拼接的sql
语意与mysql的where语句效果一样;
应用场景:开发中用得比较少,基本不用
使用例子:
product_id < 100
一般会使用以下sql代替标签:
select * from product where 1 = 1 and product_id < 100
应用场景:前一个查询结果作为后一个查询的条件
使用例子:
前一个查询结果:SELECT film_id FROM film;保存到List filmList集合中
作为后一个查询的条件:SELECT * FROM film_actor WHERE film_id IN #{item};
标签参数说明:
collection:集合的名称;
item:遍历时使用的别名;
index:索引时使用的别名;
open:以什么符号开始包围参数
separator:分隔符
close:以什么符号结果包围
等同于java的if(exprt){}else if(exprt) {}else;
应用场景:需要递进式的判断,其实也可用代替
使用例子:
SELECT * FROM BLOG WHERE state = 'ACTIVE' AND title like #{title}AND author_name like #{author.name} AND featured = 1

你可能感兴趣的:(数据库,mybatis,动态sql,数据库)