Mybatis 动态SQL【if标签、 where标签、sql标签和include标签、foreache标签】

本文介绍了在Mybatis中如何使用动态SQL进行条件查询,包括if标签处理空值问题,where标签避免语法错误,以及sql和include标签减少SQL重复。同时,展示了如何使用foreach标签解析数组或List查询多个id的用户信息。
摘要由CSDN通过智能技术生成

要求:根据性别和名字查询用户

SQL语句:

SELECT id, username, birthday, sex, address FROM `user` WHERE sex = 1 AND username LIKE '%三%'

存在的问题:

A.sex和username属性有可能只有一个,而另一个为null或者空【使用if标签

B.但是当sex/username 属性为null或者空的时候,sql语句就变成了:

              SELECT id, username, birthday, sex, address FROM `user` WHERE AND username LIKE '%三%'   ==>>存在语法错误

解决方案:

  •  添加1=1:SELECT id, username, birthday, sex, address FROM `user` WHERE 1=1 AND username LIKE '%三%'

 

<select id="findBynamesex" param
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值