SQLite
 sql >> Base de données >  >> RDS >> SQLite

GLOB SQLite

Résumé :dans ce tutoriel, vous apprendrez à utiliser le GLOB SQLite opérateur pour déterminer si une chaîne correspond à un modèle spécifique.

Introduction à SQLite GLOB opérateur

Le GLOB l'opérateur est similaire à LIKE opérateur. Le GLOB l'opérateur détermine si une chaîne correspond à un modèle spécifique.

Contrairement au LIKE opérateur, le GLOB l'opérateur est sensible à la casse et utilise les caractères génériques UNIX. De plus, le GLOB les modèles n'ont pas de caractères d'échappement.

Ce qui suit montre les caractères génériques utilisés avec le GLOB opérateur :

  • Le caractère générique astérisque (*) correspond à n'importe quel nombre de caractères.
  • Le caractère générique point d'interrogation (?) correspond exactement à un caractère.

En plus de ces caractères génériques, vous pouvez utiliser le caractère générique de liste [] pour faire correspondre un caractère d'une liste de caractères. Par exemple [xyz] correspond à n'importe quel caractère x, y ou z.

Le caractère générique de la liste autorise également une plage de caractères, par exemple, [a-z] correspond à n'importe quel caractère minuscule unique de a à z. Le [a-zA-Z0-9] modèle correspond à n'importe quel caractère alphanumérique unique, à la fois en minuscules et en majuscules.

De plus, vous pouvez utiliser le caractère ^ au début de la liste pour correspondre à n'importe quel caractère à l'exception de n'importe quel caractère de la liste. Par exemple, le [^0-9] modèle correspond à n'importe quel caractère unique, à l'exception d'un caractère numérique.

SQLite GLOB exemples

L'instruction suivante trouve les pistes dont les noms commencent par la chaîne Man . Le motif Man* correspond à toute chaîne commençant par Man .

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

Essayez-le

L'instruction suivante obtient les pistes dont les noms se terminent par Man . Le motif *Man correspond à toute chaîne se terminant par Man .

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

Essayez-le

La requête suivante trouve les pistes dont les noms commencent par un seul caractère (?), suivi de la chaîne ere puis n'importe quel nombre de caractères (*).

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

Essayez-le

Pour trouver les pistes dont les noms contiennent des numéros, vous pouvez utiliser le joker de la liste [0-9] comme suit :

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

Essayez-le

Ou pour trouver les pistes dont le nom ne contient aucun numéro, vous placez le caractère ^ au début de la liste :

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

Essayez-le

L'instruction suivante recherche les pistes dont le nom se termine par un chiffre.

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

Essayez-le

Dans ce tutoriel, vous avez appris à utiliser SQLite GLOB opérateur pour tester si une chaîne correspond à un modèle spécifique.