zoukankan      html  css  js  c++  java
  • mysql 开发基础系列5 运算符

    1. 算术运算符

    2.比较运算符

    注意NULL值不能用= 运算符
    SELECT * FROM t WHERE c =NULL;
    -- 需要改成
    SELECT * FROM t WHERE c IS NULL;
    -- 或改成
    SELECT * FROM t WHERE c <=> NULL;
    --between 相当于  a>=min  and  a<=max的运算
    -- 包含则返回1, 否则为0
    SELECT 'abcdef' REGEXP 'ab', 'abedefg' REGEXP 'k' k;

      

    3.逻辑运算符又叫布尔运算符。用来确认表达式的真和假。

         not 或!  表示逻辑非。 返回和操作数相反的结果,当操作数为0(假) 返回1。 如下

     SELECT  NOT 1 ,NOT 2,NOT 0,NOT NULL,NOT NOT NULL;

        AND 或 && 。当所有操作数均为非零值并且不为NULL 时,计算所得结果为1

    -- 两个查询结果都一样
    SELECT * FROM emp1 WHERE ename='dony' AND  sal= '3000.00';
    SELECT * FROM emp1 WHERE ename='dony' &&    sal= '3000.00';

        or 或 ||    条件只要一个为真就行

    -- 两个查询结果都一样
    SELECT * FROM emp1 WHERE ename='dony' ||  sal= '3000.00';
    SELECT * FROM emp1 WHERE ename='dony' OR  sal= '3000.00';    

        xor 逻辑异或

       当任意一个操作数为NULL 时,返回值为NULL。对于非NULL 的操作数,如果两个的逻辑真假值相异,则返回结果1;否则返回0。如下例所示:

    SELECT 1 XOR 1, 0 XOR 0,  1 XOR 0, 0 XOR 1, NULL XOR 1;

      

    4.位运算符

      位运算符是将给定的操作数转化为二进制。得到的二进制结果转换为十进制数后就是位运算的结果

       

             由于不常用就演示一个

      &位与,对多个操作数的二进制作逻辑与操作,例如2&3,因为2的二进制是10,3是11。10&11结果是10,十进制数字还是2。

    SELECT 2&3;

    可以对2 个以上操作数做或操作,测试一下2&3&4,因为4 的二进制是100,和上面的10做与操作100&010 后,结果应该是000,可以看实际结果为:

    SELECT 2&3&4;

  • 相关阅读:
    JavaScript调试
    HTML5 Content Editable实践
    微信中a链接无法进行跳转
    javascript数据类型理解整理
    做个实用的选择器,从此远离满世界找插件
    Ajax中get和post使用问题
    JSON.stringify()、JSON.parse()和eval(string)
    PHP插入header('content-type:text/html;charset="utf-8')和error_reporting()
    Ajax关于readyState(状态值)和status(状态码)的研究
    堆排序中的上滤和下滤
  • 原文地址:https://www.cnblogs.com/MrHSR/p/9242543.html
Copyright © 2011-2022 走看看