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. <<:按位左移
相关推荐
程序员黄同学1 小时前
如何使用 Python 连接 MySQL 数据库?
数据库·python·mysql
新手小袁_J2 小时前
实现Python将csv数据导入到Neo4j
数据库·python·neo4j·《我是刑警》·python连接neo4j·python导入csv·csv数据集导入neo4j
シ風箏2 小时前
Neo4j【环境部署 02】图形数据库Neo4j在Linux系统ARM架构下的安装使用
linux·数据库·arm·neo4j
张声录12 小时前
【ETCD】【实操篇(四)】etcd常见问题快问快答FAQ
数据库·etcd
CherishTaoTao4 小时前
sqlite基础
数据库·oracle·sqlite
嶔某5 小时前
MySql:基本查询
数据库·mysql
开心工作室_kaic7 小时前
springboot461学生成绩分析和弱项辅助系统设计(论文+源码)_kaic
开发语言·数据库·vue.js·php·apache
毕设资源大全7 小时前
基于SpringBoot+html+vue实现的林业产品推荐系统【源码+文档+数据库文件+包部署成功+答疑解惑问到会为止】
java·数据库·vue.js·spring boot·后端·mysql·html
weisian1518 小时前
Redis篇--常见问题篇3--缓存击穿(数据查询上锁,异步操作,熔断降级,三种缓存问题综合优化策略)
数据库·redis·缓存
圆蛤镇程序猿8 小时前
【什么是事务?】
数据库·oracle