我是靠谱客的博主 清新大白,这篇文章主要介绍mysql的or和and的组合使用,以及空和非空值的判断,现在分享给大家,希望可以做个参考。

mysql的日常使用

1.mysql在查询数据设置条件时,如果需要判断字段的属性值不能为null或者等于null,大家的惯性思维就是 A!=null 或者A==null,但是这样的写法实质上是查不出东西,写法是不对的,正确的写法应该是:

where  A is null
或者是
where A is not null

2.mysql在where中同时使用and 和or时 要注意最近在写一个搜索框的时候,条件除了前端传来的keyword关键字进行模糊查询时,还有后端自己从token中获取的数据,以及其他默认的一些条件,用到了多个and和多个or,这里如果不注意肯定会产生问题。首先多个and必须放在前面,or的条件必须放在后面,并且所有的or必须组合在一起,也就是用括号括起来,与前面的条年用and拼接,如下面这样的写法

select <include refid="Base_Column_List" />
from t_db_cmdb
<where>
    is_rac=0 and instance_number=1 and status=1

    <if test="keyword!=null and keyword!='' ">
        and (
        <if test="keyword!=null and keyword!='' ">
        ip_address like concat("%",#{keyword},"%")
        </if>

        <if test="keyword!=null and keyword!=''">
            or  db_name like concat("%",#{keyword},"%")
        </if>

        <if test="keyword!=null and keyword!=''">
            or instance_name like concat("%",#{keyword},"%")
        </if>
        )
    </if>

最后

以上就是清新大白最近收集整理的关于mysql的or和and的组合使用,以及空和非空值的判断的全部内容,更多相关mysql内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(111)

评论列表共有 0 条评论

立即
投稿
返回
顶部