Computer >> Máy Tính >  >> Lập trình >> MySQL

Hàm STRCMP () của MySQL là gì và đầu ra của hàm này là gì?

Hàm

MySQL STRCMP (), như tên cho thấy, được sử dụng để so sánh hai chuỗi. Chúng ta cần cung cấp cả hai chuỗi làm đối số của hàm này. Nó được hiển thị trong cú pháp bên dưới -

Cú pháp

STRCMP(Str1, Str2)

Đây,

  • Str1 là chuỗi đầu tiên được sử dụng để so sánh.
  • Str2 là chuỗi thứ hai được sử dụng để so sánh.

Ví dụ

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)

Trong ví dụ trên, chúng ta có thể thấy so sánh được thực hiện giữa hai chuỗi và MySQL trả về kết quả tương ứng.

Về cơ bản, hàm STRCMP () có thể cung cấp bốn loại đầu ra sau khi so sánh -

  • Đầu ra 0: Hàm STRCMP () của MySQL trả về 0 nếu cả hai chuỗi đều giống nhau.
  • Đầu ra 1: Hàm STRCMP () của MySQL trả về 1 nếu chuỗi thứ hai nhỏ hơn chuỗi đầu tiên.
  • Đầu ra -1: Hàm STRCMP () của MySQL trả về -1 nếu chuỗi đầu tiên nhỏ hơn chuỗi thứ hai.
  • Đầu ra NULL: Hàm STRCMP () của MySQL trả về NULL nếu bất kỳ một hoặc cả hai đối số của hàm STRCMP () là NULL.

Ví dụ

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)