sql >> Databasteknik >  >> RDS >> MariaDB

Hur INTE REGEXP fungerar i MariaDB

I MariaDB, NOT REGEXP operatorn är en negation av REGEXP operatör.

Om strängen matchar det angivna reguljära uttrycket är resultatet 0 , annars är det 1 . Detta är det motsatta resultatet till REGEXP skulle återkomma (när den inte har prefixet NOT ).

Syntax

Syntaxen ser ut så här:

expr NOT REGEXP pat

Där expr är inmatningssträngen och pat är det reguljära uttrycket som du testar strängen mot.

Det motsvarar att göra följande:

NOT (expr REGEXP pat)

Exempel

Här är ett exempel på hur du använder detta i en SELECT uttalande:

SELECT 'Bread' NOT REGEXP '^Br';

Resultat:

+--------------------------+
| 'Bread' NOT REGEXP '^Br' |
+--------------------------+
|                        0 |
+--------------------------+

Här matchas mönstret om inmatningssträngen börjar med Br . Det gör det, men eftersom vi använder NOT REGEXP , får vi ett negativt resultat (0 ).

Ovanstående uttalande motsvarar att göra detta:

SELECT NOT ('Bread' REGEXP '^Br');

Resultat:

+----------------------------+
| NOT ('Bread' REGEXP '^Br') |
+----------------------------+
|                          0 |
+----------------------------+

Jämfört med REGEXP

I det här exemplet jämför vi resultaten från REGEXP och NOT REGEXP :

SELECT 
  'Bread' REGEXP '^Br' AS "REGEXP",
  'Bread' NOT REGEXP '^Br' AS "NOT REGEXP";

Resultat:

+--------+------------+
| REGEXP | NOT REGEXP |
+--------+------------+
|      1 |          0 |
+--------+------------+

Ett positivt resultat

De tidigare exemplen resulterade i 0 för NOT REGEXP , eftersom strängen gjorde faktiskt matcha mönstret. Här är ett exempel där vi får en 1 , vilket indikerar att strängen inte gör det matcha:

SELECT 
  'Sofa' REGEXP '^Br' AS "REGEXP",
  'Sofa' NOT REGEXP '^Br' AS "NOT REGEXP";

Resultat:

+--------+------------+
| REGEXP | NOT REGEXP |
+--------+------------+
|      0 |          1 |
+--------+------------+

  1. Prestanda för tabellvariabler i SQL Server

  2. Hur man tar bort en främmande nyckelbegränsning i SQL

  3. Hur man övervakar MySQL-distributioner med Prometheus &Grafana på ScaleGrid

  4. Ändra typ av en kolumn med siffror från varchar till int