Rumah >pangkalan data >tutorial mysql >比较运算符有哪些

比较运算符有哪些

醉折花枝作酒筹
醉折花枝作酒筹asal
2021-07-12 14:46:1421855semak imbas

比较运算符有:=、“96b4fef55684b9312718d5de63fb7121”、“a8093152e673feb7aba1828c43532094 (!=)”、“26776c50d0ccdd933a3c8ae1e30eed9d=”、>、“IS NULL”、“IS NOT NULL”、LEAST、GREATEST、IN、“”NOT IN”、LIKE、REGEXP等。

比较运算符有哪些

本教程操作环境:windows7系统、mysql8版本、Dell G3电脑。

比较运算符可用于比较数字和字符串。今天发一篇Mysql比较运算符详解,希望对初学者有所帮助,虽然现在流行NoSQL,但是MYSQL还是很有用的,数字作为浮点值进行比较,字符串以不区为例进行比较,=运算符用于比较表达式的两边是否相等。您也可以比较字符串。

运算符用于检测表达式的两边是否不相等,如果不相等,则返回真值。

您也可以比较字符串。

比较运算符

一个比较运算符的结果总是1,0或者是NULL。MySQL中的比较运算符有:

=、96b4fef55684b9312718d5de63fb7121、a8093152e673feb7aba1828c43532094 (!=)、c01ab7558a89e9d1f72129289fb27741=、>、IS NULL、IS NOT NULL、LEAST、GREATEST、BETWEEN . . . AND. . . 、ISNULL、IN、NOT IN、LIKE、REGEXP

使用‘=’进行相等判断,SQL语句如下:

SELECT 1=0, '2'=2, 2=2,'0.02'=0, 'b'='b', (1+3) = (2+2),NULL=NULL;

clip_image004

使用’96b4fef55684b9312718d5de63fb7121’进行相等的判断,SQL语句如下:

clip_image005

由结果可以看到,’96b4fef55684b9312718d5de63fb7121’在执行比较操作时和’=’的作用是相似的,唯一的区别是’96b4fef55684b9312718d5de63fb7121’可以用来对NULL进行判断,两者都为NULL时返回值为1。

不等于运算符 a8093152e673feb7aba1828c43532094或者 !=

‘a8093152e673feb7aba1828c43532094’或者’!=’用于判断数字、字符串、表达式不相等的判断。如果不相等,返回值为1;否则返回值为0。这两个运算符不能用于判断空值NULL。

使用’a8093152e673feb7aba1828c43532094’和’!=’进行不相等的判断,SQL语句如下:

SELECT &#39;good&#39;<>&#39;god&#39;, 1<>2, 4!=4, 5.5!=5, (1+3)!=(2+1),NULL<>NULL;

clip_image006

由结果可以看到,两个不等于运算符作用相同,都可以进行数字、字符串、表达式的比较判断。

使用’ea5347a1175d21ccff0dbc7e24b7676c=’进行比较判断,SQL语句如下:

SELECT &#39;good&#39;>=&#39;god&#39;, 1>=2, 4>=4, 5.5>=5, (1+3) >= (2+1),NULL>=NULL;

clip_image009

使用’>’进行比较判断,SQL语句如下:

SELECT &#39;good&#39;>&#39;god&#39;, 1>2, 4>4, 5.5>5, (1+3) > (2+1),NULL>NULL;

clip_image010

使用IS NULL、ISNULL和IS NOT NULL判断NULL值和非NULL值,SQL语句如下:

SELECT NULL IS NULL, ISNULL(NULL),ISNULL(10), 10 IS NOT NULL;

clip_image011

使用BETWEEN AND 进行值区间判断,输入SQL语句如下:

SELECT 4 BETWEEN 4 AND 6, 4 BETWEEN 4 AND 6,12 BETWEEN 9 AND 10;

clip_image012

SELECT &#39;x&#39; BETWEEN &#39;f&#39; AND &#39;g&#39;, &#39;b&#39; BETWEEN &#39;a&#39; AND &#39;c&#39;;

clip_image013

使用LEAST运算符进行大小判断,SQL语句如下:

SELECT least(2,0), least(20.0,3.0,100.5), least(&#39;a&#39;,&#39;c&#39;,&#39;b&#39;),least(10,NULL);

clip_image014

使用GREATEST运算符进行大小判断,SQL语句如下:

SELECT greatest(2,0), greatest(20.0,3.0,100.5), greatest(&#39;a&#39;,&#39;c&#39;,&#39;b&#39;),greatest(10,NULL);

clip_image015

使用IN、NOT IN运算符进行判断,SQL语句如下:

SELECT 2 IN (1,3,5,&#39;thks&#39;), &#39;thks&#39; IN (1,3,5,&#39;thks&#39;);

clip_image016

存在NULL值时的IN查询,SQL语句如下:

SELECT NULL IN (1,3,5,&#39;thks&#39;),10 IN (1,3,NULL,&#39;thks&#39;);

clip_image017

使用运算符LIKE进行字符串匹配运算,SQL语句如下:

SELECT &#39;stud&#39; LIKE &#39;stud&#39;, &#39;stud&#39; LIKE &#39;stu_&#39;,&#39;stud&#39; LIKE &#39;%d&#39;,&#39;stud&#39; LIKE &#39;t_ _ _&#39;, &#39;s&#39; LIKE NULL;

clip_image018

使用运算符REGEXP进行字符串匹配运算,SQL语句如下:

SELECT &#39;ssky&#39; REGEXP &#39;^s&#39;, &#39;ssky&#39; REGEXP &#39;y$&#39;, &#39;ssky&#39; REGEXP &#39;.sky&#39;, &#39;ssky&#39; REGEXP &#39;[ab]&#39;;

clip_image019

扩展资料:

逻辑运算符

逻辑运算符的求值所得结果均为TRUE、FALSE或NULL。

逻辑运算符有:

  • NOT 或者 !

  • AND 或者 &&

  • OR 或者 ||

  • XOR(异或)

使用非运算符“NOT”和“!”进行逻辑判断,SQL语句如下:

SELECT NOT 10, NOT (1-1), NOT -5, NOT NULL, NOT 1 + 1;

clip_image020

SELECT !10, !(1-1), !-5, ! NULL, ! 1 + 1;

clip_image021

使用与运算符“AND”和“&&”进行逻辑判断,SQL语句如下:

SELECT 1 AND -1,1 AND 0,1 AND NULL, 0 AND NULL;

clip_image022

SELECT 1 && -1,1 && 0,1 && NULL, 0 && NULL;

clip_image023

使用或运算符“OR”和“||”进行逻辑判断,SQL语句如下:

SELECT 1 OR -1 OR 0, 1 OR 2,1 OR NULL, 0 OR NULL, NULL OR NULL;

clip_image024

SELECT 1 || -1 || 0, 1 || 2,1 || NULL, 0 || NULL, NULL || NULL;

clip_image025

使用异或运算符“XOR”进行逻辑判断,SQL语句如下:

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

执行上面的语句,结果如下。

clip_image026

位运算符

位运算符是用来对二进制字节中的位进行测试、移位或者测试处理。位运算符有:

  • 位或(|)

  • 位与(&)

  • 位异或(^ )

  • 位左移(<<)

  • 位右移(<<)

  • 位取反(~)

使用位或运算符进行运算,SQL语句如下:

SELECT 10 | 15, 9 | 4 | 2;

clip_image027

使用位与运算符进行运算,SQL语句如下:

SELECT 10 & 15, 9 &4& 2;

clip_image028

使用位异或运算符进行运算,SQL语句如下:

SELECT 10 ^ 15, 1 ^0, 1 ^ 1;

clip_image029

使用位左移运算符进行运算,SQL语句如下:

SELECT 1<<2, 4<<2;

clip_image030

使用位右移运算符进行运算,SQL语句如下:

SELECT 1>>1, 16>>2;

clip_image031

使用位取反运算符进行运算,SQL语句如下:

SELECT 5 & ~1;

clip_image032


运算符的优先级

  • 运算的优先级决定了不同的运算符在表达式中计算的先后顺序。

  • 级别高的运算符先进行计算,如果级别相同,MySQL按表达式的顺序从左到右依次计算。当然,在无法确定优先级的情况下,可以使用圆括号“()”来改变优先级。

默认情况下,MySQL相关论文,对不区是区分大小写的。如果你需要区分,你需要添加二进制关键字。

=,运算符用于比较表达式的左侧是否小于或等于、大于或等于、小于或大于右侧。

between运算符用于检测某个值是否存在于指定范围内。其中它返回真实值。

您可以添加一个非逻辑运算符来否定between比较,只有当表达式在给定范围之外时,才会返回真值。

in运算符用于验证一个值是否包含在一组指定的值中。其中返回真实值。

为空和非空运算符用于执行包含空值的比较操作

运算符称为空安全等号

相似运算符的通配符。

当使用包含like运算符的查询时,建议确保对where子句中命中的列进行索引,并且where子句包含足够的数据来限制开头搜索的记录数。

相关推荐:《mysql教程

Atas ialah kandungan terperinci 比较运算符有哪些. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn