MariaDB
 sql >> Teknologi Basis Data >  >> RDS >> MariaDB

Bagaimana STRCMP() Bekerja di MariaDB

Di MariaDB, STRCMP() adalah fungsi string bawaan yang membandingkan dua string. Ini mengembalikan 0 , -1 , atau 1 , tergantung apakah stringnya sama atau tidak.

Berikut adalah kemungkinan hasil dan artinya:

0 Stringnya sama.
-1 Argumen pertama lebih kecil dari yang kedua menurut urutan pengurutan saat ini.
1 Argumen pertama lebih besar dari yang kedua menurut urutan pengurutan saat ini

Sintaks

Sintaksnya seperti ini:

STRCMP(expr1,expr2)

Dimana expr1 adalah string pertama, dan expr2 adalah string kedua.

Contoh

Berikut ini contoh dasarnya:

SELECT 
    STRCMP('abc', 'abc') AS "1",
    STRCMP('abc', 'def') AS "2",
    STRCMP('def', 'abc') AS "3";

Hasil:

+---+----+---+
| 1 | 2  | 3 |
+---+----+---+
| 0 | -1 | 1 |
+---+----+---+

Contoh ini menunjukkan setiap kemungkinan hasil yang STRCMP() dapat menghasilkan.

Ini contoh lain:

SELECT 
    STRCMP('Cat', 'Cattery') AS "1",
    STRCMP('Dog', 'dog') AS "2",
    STRCMP('Cow 07', 'Cow 007') AS "3";

Hasil:

+----+---+---+
| 1  | 2 | 3 |
+----+---+---+
| -1 | 0 | 1 |
+----+---+---+

String Kosong vs Spasi

Membandingkan string kosong dengan spasi menghasilkan 0 :

SELECT 
    STRCMP(' ', ''),
    STRCMP('', ' ');

Hasil:

+-----------------+-----------------+
| STRCMP(' ', '') | STRCMP('', ' ') |
+-----------------+-----------------+
|               0 |               0 |
+-----------------+-----------------+

Argumen Null

Melewati null untuk argumen apa pun (atau semua argumen) mengembalikan null :

SELECT 
    STRCMP(null, 'abc'),
    STRCMP('abc', null),
    STRCMP(null, null);

Hasil:

+---------------------+---------------------+--------------------+
| STRCMP(null, 'abc') | STRCMP('abc', null) | STRCMP(null, null) |
+---------------------+---------------------+--------------------+
|                NULL |                NULL |               NULL |
+---------------------+---------------------+--------------------+

Argumen Tidak Ada

Memanggil STRCMP() dengan jumlah argumen yang salah, atau tanpa memberikan argumen apa pun menghasilkan kesalahan:

SELECT STRCMP();

Hasil:

ERROR 1582 (42000): Incorrect parameter count in the call to native function 'STRCMP'

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MariaDB NULLIF() Dijelaskan

  2. Temukan Semua Nilai Non-Numerik dalam Kolom di MariaDB

  3. MariaDB CURRENT_TIME() Dijelaskan

  4. Fungsi AVG() di MariaDB

  5. Menyebarkan Nextcloud yang Sangat Tersedia dengan MySQL Galera Cluster dan GlusterFS