SQLite-Datenbank; eingebettete relationale Datenbank Material)

SQLite-Glob-Funktion Syntax

Funktion: Der GLOB-Operator von SQLite wird verwendet, um Textwerte in durch Platzhalter angegebenen Mustern abzugleichen. Wenn der Suchausdruck mit dem Musterausdruck übereinstimmt, gibt der GLOB-Operator ?true“ zurück, also 1. Im Gegensatz zum LIKE-Operator berücksichtigt GLOB die Gro?-/Kleinschreibung und folgt der UNIX-Syntax für die folgenden Platzhalterzeichen. Sternchen (*) Fragezeichen (?) Sternchen (*) steht für null, eine oder mehrere Zahlen oder Zeichen. Das Fragezeichen (?) steht für eine einzelne Zahl oder ein einzelnes Zeichen. Diese Symbole k?nnen in Kombination verwendet werden.

Syntax: Die grundlegende Syntax von * und ? lautet wie folgt:

SELECT FROM Tabellenname
WHERE Spalte GLOB 'XXXX*'
oder
SELECT FROM Tabellenname
WHERE Spalte GLOB '*XXXX*'
oder
SELECT FROM Tabellenname
WHERE Spalte GLOB 'XXXX?'
oder
SELECT FROM Tabellenname
WHERE Spalte GLOB '?XXXX'
oder
SELECT FROM Tabellenname
WHERE Spalte GLOB '?XXXX?'
oder
SELECT FROM Tabellenname
WHERE Spalte GLOB '? ??? '

Sie k?nnen N Mengen von Bedingungen mit den Operatoren AND oder OR kombinieren. Dabei kann XXXX eine beliebige Zahl oder ein beliebiger Zeichenfolgenwert sein.

SQLite-Glob-Funktion Beispiel

COMPANY 表有以下記錄:

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
COMPANY 表中 AGE 以 2 開頭的所有記錄:

sqlite> SELECT * FROM COMPANY WHERE AGE  GLOB '2*';
這將產(chǎn)生以下結(jié)果:

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
COMPANY 表中 ADDRESS 文本里包含一個連字符(-)的所有記錄:

sqlite> SELECT * FROM COMPANY WHERE ADDRESS  GLOB '*-*';
這將產(chǎn)生以下結(jié)果:

ID          NAME        AGE         ADDRESS     SALARY
----------  ----------  ----------  ----------  ----------
4           Mark        25          Rich-Mond   65000.0
6           Kim         22          South-Hall  45000.0