Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
LIKE
El LIKE operador compara una expresión de cadena, como el nombre de una columna, con un patrón que utiliza los caracteres comodín% (porcentaje) y _ (guión bajo). LIKEla coincidencia de patrones siempre cubre toda la cadena. Para relacionar una secuencia en cualquier lugar dentro de una cadena, el patrón debe comenzar y finalizar con un signo de porcentaje.
LIKEdistingue entre mayúsculas y minúsculas; no ILIKE distingue entre mayúsculas y minúsculas.
Sintaxis
expression [ NOT ] LIKE | ILIKE pattern [ ESCAPE 'escape_char' ]
Argumentos
- expresión
-
Una expresión válida de UTF 8 caracteres, como el nombre de una columna.
- LIKE | ILIKE
-
LIKErealiza una coincidencia de patrones que distingue entre mayúsculas y minúsculas. ILIKErealiza una coincidencia de patrones que no distingue entre mayúsculas y minúsculas para los caracteres UTF -8 () de un solo byte. ASCII Para realizar una coincidencia de patrones de caracteres multibyte que no distinga entre mayúsculas y minúsculas, utilice la LOWERfunción on expression y pattern con una condición. LIKE
A diferencia de los predicados de comparación, como = y <>, los ILIKE predicados no ignoran LIKE implícitamente los espacios finales. Para ignorar los espacios finales, utilice RTRIM o dirija explícitamente una columna a. CHAR VARCHAR
El
~~
operador es equivalente aLIKE, y~~*
es equivalente aILIKE. Además, los!~~*
operadores!~~
y son equivalentes a NOT LIKE y NOTILIKE. - pattern
-
Una expresión válida de UTF 8 caracteres con el patrón que debe coincidir.
- escape_char (carácter_de_escape)
-
Una expresión de carácter que aplicará escape a metacaracteres en el patrón. La predeterminada es dos barras diagonales invertidas ("\\").
Si el patrón no contiene metacaracteres, solo representa la cadena en sí; en ese caso, LIKE actúa igual que el operador igual que el operador igual.
Cualquiera de las expresiones de caracteres puede ser CHAR de tipo de datos. VARCHAR Si son diferentes, AWS Clean Rooms convierte el patrón al tipo de datos de la expresión.
LIKEadmite los siguientes metacaracteres de coincidencia de patrones:
Operador | Descripción |
---|---|
%
|
Coincide con cualquier secuencia de cero o más caracteres. |
_ |
Coincide con cualquier carácter. |
Ejemplos
En la siguiente tabla se muestran ejemplos de coincidencia de patrones mediante: LIKE
Expression | Devuelve |
---|---|
'abc' LIKE 'abc' |
True |
'abc' LIKE 'a%' |
True |
'abc' LIKE '_B_' |
False |
'abc' ILIKE '_B_' |
True |
'abc' LIKE 'c%' |
False |
En el siguiente ejemplo se encuentran todas las ciudades cuyos nombres comienzan con "E":
select distinct city from users where city like 'E%' order by city; city --------------- East Hartford East Lansing East Rutherford East St. Louis Easthampton Easton Eatontown Eau Claire ...
En el siguiente ejemplo se encuentran usuarios cuyos apellidos contienen "ten":
select distinct lastname from users where lastname like '%ten%' order by lastname; lastname ------------- Christensen Wooten ...
En el siguiente ejemplo se encuentran todas las ciudades cuyos terceros y cuartos caracteres son "ea". El comando se utiliza ILIKE para demostrar que no se distingue entre mayúsculas y minúsculas:
select distinct city from users where city ilike '__EA%' order by city; city ------------- Brea Clearwater Great Falls Ocean City Olean Wheaton (6 rows)
En el siguiente ejemplo se usa la cadena de escape predeterminada (\\) para buscar cadenas que incluyan «start_» (el texto start
seguido de un guion bajo _
):
select tablename, "column" from my_table_def where "column" like '%start\\_%' limit 5; tablename | column -------------------+--------------- my_s3client | start_time my_tr_conflict | xact_start_ts my_undone | undo_start_ts my_unload_log | start_time my_vacuum_detail | start_row (5 rows)
En el siguiente ejemplo se especifica «^» como el carácter de escape y, luego, se utiliza el carácter de escape para buscar cadenas que incluyan «start_» (el texto start
seguido de un guion bajo _
):
select tablename, "column" from my_table_def where "column" like '%start^_%' escape '^' limit 5; tablename | column -------------------+--------------- my_s3client | start_time my_tr_conflict | xact_start_ts my_undone | undo_start_ts my_unload_log | start_time my_vacuum_detail | start_row (5 rows)
En el siguiente ejemplo, se utiliza el ~~*
operador para realizar una búsqueda que no distinga mayúsculas de minúsculas (ILIKE) de las ciudades que comiencen por «Ag».
select distinct city from users where city ~~* 'Ag%' order by city;
city ------------ Agat Agawam Agoura Hills Aguadilla