English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
SQLite GLOB
opérateurs sont utilisés pour utiliser des caractères comodules pour faire correspondre des valeurs de texte avec des motifs. Si l'expression de recherche peut correspondre à l'expression de motif, l'opérateur GLOB renverra true, c'est-à-dire1. Contrairement à l'opérateur LIKE, GLOB distingue les majuscules et les minuscules et suit la syntaxe UNIX pour spécifier les caractères comodules suivants.
l'étoile (*)*
le point d'interrogation (?)
l'étoile (*)*représente zéro ou plusieurs chiffres ou caractères. Le point d'interrogation (?) représente un seul chiffre ou caractère.
Voici la syntaxe de base*
et?
.
SELECT FROM table_name WHERE column GLOB 'XXXX'*' ou SELECT FROM table_name WHERE column GLOB ''*XXXX*' ou SELECT FROM table_name WHERE column GLOB 'XXXX?' ou SELECT FROM table_name WHERE column GLOB '?XXXX' ou SELECT FROM table_name WHERE column GLOB '?XXXX?' ou SELECT FROM table_name WHERE column GLOB '????'
Vous pouvez combiner plusieurs conditions en utilisant les opérateurs AND ou OR. Ici, XXXX peut être n'importe quel chiffre ou chaîne de caractères.
Le tableau suivant présente de nombreux exemples où la clause LIKE de la partie WHERE contient des*'et' et les opérateurs '?'
numéro | déclaration et explication |
---|---|
1 |
chercher ceux qui commencent par2commençant par 00 |
2 |
chercher n'importe quelle position contenant2les valeurs 00 |
3 |
chercher ceux qui ont 00 aux deuxième et troisième positions |
4 |
chercher ceux qui commencent par2commençant et d'une longueur d'au moins3n'importe quel caractère |
5 |
chercher ceux qui commencent par2terminant par n'importe quelle valeur |
6 |
chercher le deuxième caractère contenant2et3terminant par n'importe quelle valeur |
7 |
chercher ceux qui commencent par2et3terminant par un nombre à cinq chiffres |
Considérons un exemple réel avec la table COMPANY contenant les enregistrements suivants-
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 1 Paul 32 California 20000.0 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0
Voici un exemple qui affichera tous les enregistrements de la table COMPANY où AGE commence par2de début.
sqlite> SELECT * FROM COMPANY WHERE AGE GLOB '2*';
Cela produira le résultat suivant.
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 2 Allen 25 Texas 15000.0 3 Teddy 23 Norway 20000.0 4 Mark 25 Rich-Mond 65000.0 5 David 27 Texas 85000.0 6 Kim 22 South-Hall 45000.0 7 James 24 Houston 10000.0
Voici un exemple, qui affichera tous les enregistrements de la table COMPANY, où l'ADDRESS contient des traits de liaison (-)-
sqlite> SELECT * FROM COMPANY WHERE ADDRESS GLOB '*-*';
Cela produira le résultat suivant.
ID NAME AGE ADDRESS SALARY ---------- ---------- ---------- ---------- ---------- 4 Mark 25 Rich-Mond 65000.0 6 Kim 22 South-Hall 45000.0