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

Bagaimana TIDAK RLIKE Bekerja di MariaDB

Di MariaDB, NOT RLIKE adalah negasi dari RLIKE operator.

Dengan kata lain, kapan saja RLIKE operator akan mengembalikan 1 , NOT RLIKE akan mengembalikan 0 .

Sintaks

Sintaksnya seperti ini:

expr NOT RLIKE pat

Dimana expr adalah string input dan pat adalah ekspresi reguler yang digunakan untuk menguji string.

Ini setara dengan melakukan hal berikut:

NOT (expr RLIKE pat)

Contoh

Berikut ini contoh penggunaan ini dalam SELECT pernyataan:

SELECT 'Coffee' NOT RLIKE '^C.*e$';

Hasil:

+-----------------------------+
| 'Coffee' NOT RLIKE '^C.*e$' |
+-----------------------------+
|                           0 |
+-----------------------------+

Di sini, polanya cocok jika string input dimulai dengan C dan diakhiri dengan e . Ya, tetapi karena kami menggunakan NOT RLIKE , kami mendapatkan hasil negatif (0 ).

Pernyataan di atas setara dengan melakukan ini:

SELECT NOT ('Coffee' RLIKE '^C.*e$');

Hasil:

+-------------------------------+
| NOT ('Coffee' RLIKE '^C.*e$') |
+-------------------------------+
|                             0 |
+-------------------------------+

Dibandingkan dengan RLIKE

Di sini kami membandingkan hasil dari RLIKE dengan NOT RLIKE :

SELECT 
  'Coffee' RLIKE '^C.*e$' AS "RLIKE",
  'Coffee' NOT RLIKE '^C.*e$' AS "NOT RLIKE";

Hasil:

+-------+-----------+
| RLIKE | NOT RLIKE |
+-------+-----------+
|     1 |         0 |
+-------+-----------+

Hasil Positif

Contoh sebelumnya menghasilkan 0 untuk NOT RLIKE , karena string dilakukan benar-benar cocok dengan polanya. Berikut ini contoh di mana kita mendapatkan 1 , yang menunjukkan bahwa string tidak cocok:

SELECT 
  'Funny' RLIKE '^C.*e$' AS "RLIKE",
  'Funny' NOT RLIKE '^C.*e$' AS "NOT RLIKE";

Hasil:

+-------+-----------+
| RLIKE | NOT RLIKE |
+-------+-----------+
|     0 |         1 |
+-------+-----------+

Alternatif

MariaDB menyertakan banyak fungsi dan operator yang pada dasarnya melakukan hal yang sama, dan ini juga berlaku untuk NOT RLIKE .

  1. RLIKE adalah sinonim dari REGEXP operator.
  2. NOT RLIKE setara dengan NOT REGEXP .
  3. RLIKE dan REGEXP dapat dinegasikan hanya dengan menggunakan NOT operator logika.

Oleh karena itu, semua yang berikut ini setara:

expr NOT RLIKE pat
expr NOT REGEXP pat
NOT (expr RLIKE pat)
NOT (expr REGEXP pat)

Dan inilah contoh untuk ditunjukkan:

SELECT 
  'Car' NOT RLIKE '^C' AS "Result 1",
  'Car' NOT REGEXP '^C' AS "Result 2",
  NOT ('Car' RLIKE '^C') AS "Result 3",
  NOT ('Car' REGEXP '^C') AS "Result 4";

Hasil:

+----------+----------+----------+----------+
| Result 1 | Result 2 | Result 3 | Result 4 |
+----------+----------+----------+----------+
|        0 |        0 |        0 |        0 |
+----------+----------+----------+----------+

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ubah Hasil Kueri menjadi Daftar Dipisahkan Koma di MariaDB

  2. Bagaimana CONCAT_WS() Bekerja di MariaDB

  3. Mengenal kemampuan dan fitur di MariaDB SkySQL

  4. Peralihan dan Kegagalan Basis Data untuk Situs Web Drupal Menggunakan MySQL atau PostgreSQL

  5. Basis data pembandingan 101 - bagian 1