Resumo : neste tutorial, você aprenderá como usar o GLOB
operador SQLite para determinar se uma string corresponde a um padrão específico.
Introdução ao GLOB
operador SQLite
O GLOB
operador é semelhante ao LIKE
operador. O GLOB
operador determina se uma string corresponde a um padrão específico.
Ao contrário do LIKE
operador, o GLOB
operador diferencia maiúsculas de minúsculas e usa curingas UNIX. Além disso, os GLOB
padrões não possuem caracteres de escape.
Veja a seguir os curingas usados com o GLOB
operador:
- O curinga asterisco (*) corresponde a qualquer número de caracteres.
- O curinga ponto de interrogação (?) corresponde exatamente a um caractere.
Além desses curingas, você pode usar o curinga de lista [] para corresponder a um caractere de uma lista de caracteres. Por exemplo [xyz]
, corresponda a qualquer caractere x, y ou z.
O curinga da lista também permite uma variedade de caracteres, por exemplo, [az] corresponde a qualquer caractere minúsculo de a a z. O [a-zA-Z0-9]
padrão corresponde a qualquer caractere alfanumérico único, tanto minúsculo quanto maiúsculo.
Além disso, você pode usar o caractere ^
no início da lista para corresponder a qualquer caractere, exceto qualquer caractere da lista. Por exemplo, o [^0-9]
padrão corresponde a qualquer caractere único, exceto um caractere numérico.
GLOB
Exemplos de SQLite
A instrução a seguir encontra faixas cujos nomes começam com a string Man
. O padrão Man*
corresponde a qualquer string que comece com Man
.
SELECT
trackid,
name
FROM
tracks
WHERE
name GLOB 'Man*';
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
A instrução a seguir obtém as faixas cujos nomes terminam com Man
. O padrão *Man
corresponde a qualquer string que termine com Man
.
SELECT
trackid,
name
FROM
tracks
WHERE
name GLOB '*Man';
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
A consulta a seguir encontra as faixas cujos nomes começam com um único caractere (?), seguido pela string ere
e depois por qualquer número de caracteres (*).
SELECT
trackid,
name
FROM
tracks
WHERE
name GLOB '?ere*';
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Para encontrar as faixas cujos nomes contêm números, você pode usar o curinga da lista [0-9]
da seguinte forma:
SELECT
trackid,
name
FROM
tracks
WHERE
name GLOB '*[1-9]*';
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Ou para encontrar as faixas cujo nome não contém nenhum número, coloque o caractere ^
no início da lista:
SELECT
trackid,
name
FROM
tracks
WHERE
name GLOB '*[^1-9]*';
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
A instrução a seguir encontra as faixas cujos nomes terminam com um número.
SELECT
trackid,
name
FROM
tracks
WHERE
name GLOB '*[1-9]';
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Neste tutorial, você aprendeu como usar GLOB
o operador SQLite para testar se uma string corresponde a um padrão específico.