sql >> Database >  >> RDS >> SQLite

SQLite GLOB

Samenvatting :in deze tutorial leer je hoe je de SQLite GLOB . gebruikt operator om te bepalen of een tekenreeks overeenkomt met een specifiek patroon.

Inleiding tot de SQLite GLOB telefoniste

De GLOB operator is vergelijkbaar met de LIKE exploitant. De GLOB operator bepaalt of een string overeenkomt met een specifiek patroon.

In tegenstelling tot de LIKE operator, de GLOB operator is hoofdlettergevoelig en gebruikt de UNIX-jokertekens. Bovendien is de GLOB patronen hebben geen escape-tekens.

Het volgende toont de jokertekens die worden gebruikt met de GLOB operator:

  • Het asterisk (*)-jokerteken komt overeen met een willekeurig aantal tekens.
  • Het vraagteken (?) jokerteken komt exact overeen met één teken.

Naast deze jokertekens kunt u de lijstjokerteken [] gebruiken om één teken uit een lijst met tekens te matchen. Bijvoorbeeld [xyz] overeenkomen met een enkel x-, y- of z-teken.

Het lijstjokerteken staat ook een reeks tekens toe, bijvoorbeeld [a-z] komt overeen met een enkel klein teken van a tot z. De [a-zA-Z0-9] patroon komt overeen met elk afzonderlijk alfanumeriek teken, zowel kleine letters als hoofdletters.

Bovendien kunt u het teken ^ . gebruiken aan het begin van de lijst om overeen te komen met een willekeurig teken, behalve een willekeurig teken in de lijst. Bijvoorbeeld de [^0-9] patroon komt overeen met elk afzonderlijk teken, behalve een numeriek teken.

SQLite GLOB voorbeelden

De volgende instructie vindt tracks waarvan de naam begint met de tekenreeks Man . Het patroon Man* komt overeen met elke tekenreeks die begint met Man .

SELECT
	trackid,
	name
FROM
	tracks
WHERE
	name GLOB 'Man*';Code language: SQL (Structured Query Language) (sql)

Probeer het

Het volgende statement haalt de tracks op waarvan de naam eindigt op Man . Het patroon *Man komt overeen met elke tekenreeks die eindigt op Man .

SELECT
	trackid,
	name
FROM
	tracks
WHERE
	name GLOB '*Man';Code language: SQL (Structured Query Language) (sql)

Probeer het

De volgende zoekopdracht vindt de tracks waarvan de naam begint met een enkel teken (?), gevolgd door de tekenreeks ere en vervolgens een willekeurig aantal tekens (*).

SELECT
	trackid,
	name
FROM
	tracks
WHERE
	name GLOB '?ere*';Code language: SQL (Structured Query Language) (sql)

Probeer het

Om de nummers te vinden waarvan de namen nummers bevatten, kunt u het lijstjokerteken [0-9] . gebruiken als volgt:

SELECT
	trackid,
	name
FROM
	tracks
WHERE
	name GLOB '*[1-9]*';Code language: SQL (Structured Query Language) (sql)

Probeer het

Of om de nummers te vinden waarvan de naam geen nummer bevat, plaatst u het teken ^ aan het begin van de lijst:

SELECT
	trackid,
	name
FROM
	tracks
WHERE
	name GLOB '*[^1-9]*';Code language: SQL (Structured Query Language) (sql)

Probeer het

De volgende verklaring vindt de nummers waarvan de naam eindigt op een nummer.

SELECT
	trackid,
	name
FROM
	tracks
WHERE
	name GLOB '*[1-9]';Code language: SQL (Structured Query Language) (sql)

Probeer het

In deze zelfstudie hebt u geleerd hoe u SQLite GLOB . gebruikt operator om te testen of een string overeenkomt met een specifiek patroon.


  1. Wanneer gebruik je SELECT ... VOOR UPDATE?

  2. een aantal unieke waarden krijgen zonder waarden te scheiden die tot hetzelfde waardenblok behoren

  3. Easysoft ODBC-stuurprogramma's en de ODBCINST-bibliotheek

  4. Zelf meedoen in orakel met voorbeelden