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. <<:按位左移
相关推荐
7***68431 小时前
Spring Boot 从 2.7.x 升级到 3.3注意事项
数据库·hive·spring boot
('-')1 小时前
《从根上理解MySQL是怎样运行的》第十章学习笔记
笔记·学习·mysql
L***d6701 小时前
Spring Boot 各种事务操作实战(自动回滚、手动回滚、部分回滚)
java·数据库·spring boot
java_logo1 小时前
MySQL Server Docker 容器化部署指南
linux·运维·数据库·docker·容器
likuolei1 小时前
XSL-FO 软件
java·开发语言·前端·数据库
p***95002 小时前
Springboot3 Mybatis-plus 3.5.9
数据库·oracle·mybatis
CS_浮鱼2 小时前
【MySQL】InnoDB存储引擎
数据库·mysql
合作小小程序员小小店2 小时前
桌面开发,在线%信息管理%系统,基于vs2022,c#,winform,sql server数据。
开发语言·数据库·sql·microsoft·c#
q***18842 小时前
解决phpstudy无法启动MySQL服务
数据库·mysql·adb
e***95642 小时前
【HTML+CSS】使用HTML与后端技术连接数据库
css·数据库·html