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. <<:按位左移
相关推荐
jiayou641 天前
KingbaseES 实战:深度解析数据库对象访问权限管理
数据库
于眠牧北1 天前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
李广坤2 天前
MySQL 大表字段变更实践(改名 + 改类型 + 改长度)
数据库
Turnip12023 天前
深度解析:为什么简单的数据库"写操作"会在 MySQL 中卡住?
后端·mysql
爱可生开源社区3 天前
2026 年,优秀的 DBA 需要具备哪些素质?
数据库·人工智能·dba
随逸1773 天前
《从零搭建NestJS项目》
数据库·typescript
加号34 天前
windows系统下mysql多源数据库同步部署
数据库·windows·mysql
シ風箏4 天前
MySQL【部署 04】Docker部署 MySQL8.0.32 版本(网盘镜像及启动命令分享)
数据库·mysql·docker
李慕婉学姐4 天前
Springboot智慧社区系统设计与开发6n99s526(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库·spring boot·后端
百锦再4 天前
Django实现接口token检测的实现方案
数据库·python·django·sqlite·flask·fastapi·pip