sql中的运算符

算数运算符:+、-、*、/、%

  1. 在SQL中,+只做运算,不做连接操作,比如:5 + '1' = 6
  2. 在SQL中,5 + 'a' = 5,'a'隐式转换成了0
  3. 在SQL中,两个整数相除,结果为浮点型数
  4. 在SQL中,10 / 0 = NULL10 % 0 = NULL

比较运算符:=、<=>、<>、!=、>、<、>=、<=

  1. =:等于
    ① 结果为真返回1,为假返回0,其他情况返回NULL
    ② 与数值做运算时,字符串存在隐式转换,如果转换数值不成功,则看做0
    ③ 两边都是字符串,则按ASCII比较
    ④ 只要有NULL参与判断,结果一定是NULL

  2. <=>:安全等于
    =的区别在于,可以对NULL进行判断

    sql 复制代码
    // 结果是0、1
    SELECT 1 <=> NULL, NULL <=> NULL FROM DUAL;
  3. <>!=:不等于

关键字运算符

  1. IS NULL:判断是否为NULL
  2. ISNULL(),判断是否为NULL
  3. IS NOT NULL:判断是否不为NULL
  4. LEAST():两者中的最小
  5. GREATEST():两者中的最大
  6. BETWEEN ... AND:两者中间,闭区间
  7. IN(set):是否在set中
  8. NOT IN(set):是否不在set中
  9. LIKE:模糊查询
    %代表0个或多个不确定的字符
    _代表一个不确定的字符
  10. REGEXP:正则表达式
  11. RLIKE:正则表达式

逻辑运算符

  1. AND&&:与
  2. OR||:或
  3. NOT!:非
  4. XOR:异或

位运算符

  1. &:按位与
  2. |:按位或
  3. ^:按位异或
  4. ~:按位取反
  5. >>:按位右移
  6. <<:按位左移
相关推荐
代码or搬砖17 分钟前
MyBatisPlus中的常用注解
数据库·oracle·mybatis
盼哥PyAI实验室18 分钟前
MySQL 数据库入门第一课:安装、账户、库、表与数据操作详解
数据库·mysql
h***59332 小时前
MySQL如何执行.sql 文件:详细教学指南
数据库·mysql
郑重其事,鹏程万里2 小时前
键值存储数据库(chronicle-map)
数据库·oracle
Doro再努力2 小时前
【MySQL数据库09】外键约束与多表查询基础
数据库·mysql
ss2733 小时前
019:深入解析可重入互斥锁:原理、实现与线程安全实践
java·数据库·redis
高级程序源3 小时前
springboot社区医疗中心预约挂号平台app-计算机毕业设计源码16750
java·vue.js·spring boot·mysql·spring·maven·mybatis
O***Z6163 小时前
三分钟内快速完成MySQL到达梦数据库的迁移
数据库·mysql
友友马4 小时前
『QT』窗口 (一)
开发语言·数据库·qt
q***78374 小时前
SQL实现md5加密方法
数据库·sql