MyBatis如何根据不同的条件输出不同的sql呢?

重生 MyBatis 发布时间:2024-02-17 16:31:33 阅读数:1025 1
下文笔者讲述mybatis中根据不同条件输出不同sql的方法及示例分享,如下所示
在日常开发中,我们经常需要根据不同的参数拼接不同的sql 
   如:某字段存在值,则输出此字段进行查询
      那么如何才能实现此类需求呢?下文笔者将一一道来,如下所示
我们只需在 xml中sql编写时,
    借助 if 和 test关键字进行相应的判断和编写即可实现条件判断的效果
例:
mapper

public interface UserInfoMapper extends BaseMapper<UserInfo> {
    list<UserInfo> queryHouses(@Param("isCity") Boolean isCity);
}

xml 

<select id="queryHouses" resultType="com.xxx.xxx.entity.UserInfo">
    SELECT * FROM userInfo ht
    WHERE 1 = 1
    <if test="!isCity">
        AND ht.covered_area = 5
    </if>
</select>

----输出不同的值则会输出不同的sql

isCity为false时
  SELECT * FROM userInfo ht WHERE 1 = 1 AND ht.covered_area = 5

isCity为true时
  SELECT * FROM userInfo ht WHERE 1 = 1
版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

本文链接: https://www.Java265.com/JavaFramework/MyBatis/202402/7961.html

最近发表

热门文章

好文推荐

Java265.com

https://www.java265.com

站长统计|粤ICP备14097017号-3

Powered By Java265.com信息维护小组

使用手机扫描二维码

关注我们看更多资讯

java爱好者