• MySQL的and操作符和or操作符


    有时对where的要筛选的列不止一个时,那么就用到了and操作符和or操作符,and操作符顾名思义的意思是”并且“,而or操作符的意思是"或者"。

    比如以部门员工表为例

    查询部门编号为d001并且入职日期为 1985-02-02的员工编号,那么就要用到and操作符

    select emp_no from dept_emp where dept_no='d001' and  from_date='1985-02-02';

    那如果是查询部门编号为d001或者入职日期为 1985-02-02的员工编号,这时就要用到or操作符

    select emp_no from dept_emp where dept_no='d001' or  from_date='1985-02-02';

    where可以包含任意数目的and和or操作符,允许两者结合进行复杂和高级的过滤。但如果两者都存在时,and操作符的计算次序会更高

    比如查询部门d001或者或部门d002入职时间为1985-02-02的信息

    可能错误地写成 

    select * from dept_emp where dept_no='d001' or dept_no='d002' and from_date='1985-02-02';

    此时的查询结果就变成这样,这就是由于and操作符的计算次序更高造成的

    更改为  or操作符的前后加上()就好了

    select * from dept_emp where (dept_no='d001' or dept_no='d002' ) and from_date='1985-02-02';
    生于忧患,死于安乐
  • 相关阅读:
    使用android-ndk官方ndkbuild例子
    小米8如何root
    Ubuntu点击dash home就崩溃
    Python自定义排序
    adb命令
    sqoop数据导出导入命令
    Docker命令详解
    如何输出第二列相同的行
    如何使用Xmanager及VNC登录远程桌面
    搭建GoldenGate的单向复制环境
  • 原文地址:https://www.cnblogs.com/songlove/p/15490284.html
Copyright © 2020-2023  润新知