什么是MySQL STRCMP()函数,该函数的输出是什么?

STRCMP()顾名思义,MySQL函数用于比较两个字符串。我们需要提供两个字符串作为此函数的参数。它显示在下面的语法中-

语法

STRCMP(Str1, Str2)

这里, 

  • Str1是用于比较的第一个字符串。

  • Str2是用于比较的第二个字符串。

示例

mysql> Select STRCMP('MySQL', 'MySQL');
+--------------------------+
| STRCMP('MySQL', 'MySQL') |
+--------------------------+
|                        0 |
+--------------------------+
1 row in set (0.00 sec)

mysql> Select STRCMP('MSQL', 'MySQL');
+-------------------------+
| STRCMP('MSQL', 'MySQL') |
+-------------------------+
|                      -1 |
+-------------------------+
1 row in set (0.00 sec)

mysql> Select STRCMP('MySQL', 'MSQL');
+-------------------------+
| STRCMP('MySQL', 'MSQL') |
+-------------------------+
|                       1 |
+-------------------------+
1 row in set (0.00 sec)

在上面的示例中,我们可以看到两个字符串之间的比较,MySQL相应地返回了输出。

基本上,STRCMP()方法经过比较可以给出四种输出-

  • 输出0: STRCMP()如果两个字符串相同,则MySQL函数返回0。

  • 输出1:STRCMP()如果第二个字符串小于第一个字符串,则MySQL函数返回1。

  • 输出-1:STRCMP()如果第一个字符串小于第二个字符串,则MySQL函数返回-1。

  • 输出NULL:STRCMP()如果函数的一个或两个参数均为NULL,则MySQL函数返回STRCMP()NULL。

示例

mysql> Select STRCMP('Test', 'Test')As 'Equal Strings', STRCMP('TestABC', 'Test')AS '2nd Smaller', STRCMP('Test', 'TestABC')AS '1st Smaller', STRCMP('Test', NULL)As '2nd NULL',STRCMP(NULL, 'Test')AS '1st NULL',STRCMP(NULL,NULL)AS 'Both NULL';
+---------------+-------------+-------------+----------+----------+-----------+
| Equal Strings | 2nd Smaller | 1st Smaller | 2nd NULL | 1st NULL | Both NULL |
+---------------+-------------+-------------+----------+----------+-----------+
|       0       |      1      |      -1     |    NULL  |    NULL  |    NULL   |
+---------------+-------------+-------------+----------+----------+-----------+
1 row in set (0.00 sec)
猜你喜欢