MySQL笔记 —SQL运算符

MySQL笔记 —SQL运算符,第1张

MySQL笔记 —SQL运算符 目录
  • 1.算术运算符
  • 2.比较运算符
    • 具体关键字
  • 3.逻辑运算符
    • 4.位运算符

      1.算术运算符 +-*/或DIV%或MOD

        /或DIV

      select 100/5,100 DIV 5 from dual;
      
      

      结果:

      100/5100 DIV 520.000020

      注意:/结果是浮点型有结果20.0000,但是DIV结果是20

      取模运算%MOD

      select 10 % 2,10 % 3,12 MOD -4 from dual;
      
      

      结果:

      10 % 210 % 312 MOD -4010

      2.比较运算符 <>=<=><>或!=<=>=小于大于等于安全等于不等于小于等于大于等于

      <=>第一次学到比较特殊

      select null <=> null,null = null,null != null from dual;
      
      

      结果:

      null<=>nullnull=nullnull!=null1nullnull

      因此可以得出<=>就是为NULL而生,其余只要运算中有null结果为null

      具体关键字

      IS NULL 等于<=>NULL 运算及结果一样

      ISNULL IS NULL也一样,但用法有点不一样

      select salary from empty where salary is null;
      select salary from empty where isnull(salary);
      select salary from empty where salary <=> null;

      大家在运用过程中最好最好用is null is not null

      LEAST()min(),CREATEST()max() 一样,还是建议用min与max

      BETWEEN  条件1 AND 条件2  (查询条件1到条件2范围数据,包含边界。条件1是下限,条件2是上限)

      select * from emp
      where salary between 3000 and 5000;

      在emp表查询工资在3000到5000的员工信息

      innot in

      course表查询选修了(name)数据库,线性代数,概率论的同学信息

      select * 
      from course
      where name in('数据库','线性代数','概率论');
      #where name='数据库' or name='线性代数' or name='概率论';

      很明显in对多个数据选择更加方便了,如果查不在里面的用not in()即可

      like模糊查询 

      stu表查询了(name)性刘的同学信息

      select *
      from stu
      where name like'刘%';

      在stu表查询了(name)名字包含为刘的同学信息

      select *
      from stu
      where name like'%刘%';

      stu表查询了(name)名字包含刘也包含壮的同学信息

      select *
      from stu
      where name like'%刘%' and name like'%壮%';

      在stu表查询了(name)名字第二个字为刘的同学信息

      select *
      from stu
      where name like'_刘%';

      u表查询了(name)名字第二个为_且第三个字为刘的同学信息(需要使用转移字符\)

      select *
      from stu
      where name like'_\_刘%';

      不使用转移字符需要表中用escape(&不是必须的可以用任意字符)

      select *
      from stu
      where name like'_&_刘%' escape '&';

      正则表达式:(了解)

      REGEXP运算符用来匹配字符串,语法格式为:expr REGEXP 匹配条件。如果expr满足匹配条件,返回1;如果不满足,则返回0。若expr或匹配条件任意一个为NULL,则结果为NULL。

      REGEXP运算符在进行匹配时,常用的有下面几种通配符:

      • (1)‘^’匹配以该字符后面的字符开头的字符串。
      • (2)‘$’匹配以该字符前面的字符结尾的字符串。
      • (3)‘.’匹配任何一个单字符。
      • (4)“[...]”匹配在方括号内的任何字符。例如,“[abc]”匹配“a”或“b”或“c”。为了命名字符的范围,使用一个‘-’。“[a-z]”匹配任何字母,而“[0-9]”匹配任何数字。(3.4自我理解跟like差不多)
      • (5)‘*’匹配零个或多个在它前面的字符。例如,“x*”匹配任何数量的‘x’字符,“[0-9]*”匹配任何数量的数字,而“*”匹配任何数量的任何字符。

      3.逻辑运算符 NOT或!AND或&&OR或||XOR逻辑非逻辑与逻辑或逻辑异或

      注意:

      OR可以和AND一起使用,但是在使用时要注意两者的优先级,由于AND的优先级高于OR,因此先对AND两边的 *** 作数进行 *** 作,再与OR中的 *** 作数结合。

      主要XOR有点陌生,有且只能取一方。

      4.位运算符 &|^~>><<换位与(位AND)换位或(位OR)换位异或(位XOR)按位取反按位右移按位左移

      了解即可。

      到此这篇关于MySQL笔记 —SQL运算符的文章就介绍到这了,更多相关 SQL运算符内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

      欢迎分享,转载请注明来源:内存溢出

      原文地址: http://outofmemory.cn/sjk/2996908.html

      (0)
      打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
      上一篇 2022-09-26
      下一篇 2022-09-26

      发表评论

      登录后才能评论

      评论列表(0条)

      保存