PostgreSQL Ejemplos de ME GUSTA, No Me gusta, comodines (%, _ )

โšก Resumen inteligente

PostgreSQL La funciรณn LIKE compara texto con patrones mediante dos comodines: el signo de porcentaje y el guion bajo. Este tutorial muestra cรณmo usar LIKE y NOT LIKE en sentencias SELECT, con ejemplos prรกcticos en psql y pgAdmin para cada caso.

  • ๐Ÿ” Nuestras Operacolina: La funciรณn LIKE compara una columna o expresiรณn con un patrรณn comodรญn y devuelve verdadero si hay coincidencia.
  • ???? Dos comodines: % coincide con cero o mรกs caracteres; _ coincide exactamente con un carรกcter.
  • โœ‹ Coincidencia inversa: Combine NOT con LIKE para devolver filas que no lo hagan. No coincide con el patrรณn.
  • ๐Ÿ› ๏ธ Dos interfaces: Ejecute las mismas consultas desde la lรญnea de comandos de psql o grรกficamente dentro de pgAdmin.
  • ๐ŸŽฏ Personaje de escape: Utilice la clรกusula ESCAPE para que coincida con los caracteres literales % o _ dentro del patrรณn.
  • ๐Ÿค– Impulso de IA: Las herramientas de bases de datos de IA traducen las necesidades de bรบsqueda en lenguaje natural a patrones LIKE y sugieren ILIKE cuando se requiere una coincidencia que no distinga entre mayรบsculas y minรบsculas.

PostgreSQL Ejemplos de ME GUSTA, No Me gusta, comodines (%, _ )

El PostgreSQL COMO El operador compara valores de texto con patrones usando comodines. Si la expresiรณn de bรบsqueda coincide con el patrรณn, LIKE devuelve trueLos comodines funcionan en el WHERE clรกusula de SELECT, UPDATE, INSERT, o DELETE.

ยฟQuรฉ son PostgreSQL ยฟComodines?

PostgreSQL Admite dos comodines LIKE:

  • Signo de porcentaje (%): coincide con cero, uno o muchos caracteres o dรญgitos.
  • Guion bajo (_): coincide exactamente con un carรกcter o dรญgito.

Los dos sรญmbolos se pueden combinar dentro del mismo patrรณn. Si se usa LIKE sin ningรบn comodรญn, se comporta como el signo de igual (=) operador.

PostgreSQL Sintaxis LIKE

La sintaxis bรกsica de LIKE es:

expression LIKE pattern [ ESCAPE 'escape-character' ]
  • expresiรณn โ€” una expresiรณn de caracteres, normalmente el nombre de una columna o campo.
  • patrรณn โ€” una expresiรณn de caracteres que contiene comodines.
  • Personaje de escape โ€” opcional. Permite hacer coincidir literal % or _ caracteres. Cuando se omite, la barra invertida (\) es el carรกcter de escape predeterminado.

PostgreSQL COMO con el comodรญn %

El % El signo coincide con cero, uno o mรกs caracteres. Considere lo siguiente Book mesa:

Tabla de muestra utilizada en los ejemplos de LIKE

Para encontrar libros cuyo nombre comience con โ€œLearโ€, ejecute la siguiente consulta.

SELECT *
FROM
   Book
WHERE
   name LIKE 'Lear%';

La consulta devuelve:

LIKE Lear% resultado de la consulta que devuelve libros coincidentes

Para encontrar libros cuyo tรญtulo contenga โ€œporโ€ en cualquier lugar:

SELECT *
FROM
   Book
WHERE
   name LIKE '%by%';

La consulta devuelve:

LIKE %by% resultado de la consulta con libros coincidentes

PostgreSQL ME GUSTA con el comodรญn _

El _ El signo coincide exactamente con un carรกcter. La siguiente consulta encuentra nombres donde el primer carรกcter es cualquier letra, seguido de โ€œearnโ€ y luego cualquier sufijo:

SELECT *
FROM
   Book
WHERE
   name LIKE '_earn%';

La consulta devuelve:

LIKE _earn% resultado de la consulta con coincidencias de prefijo de un solo carรกcter

Otro ejemplo: busque cualquier texto que termine con โ€œBeginnerโ€ mรกs un carรกcter adicional:

SELECT *
FROM
   Book
WHERE
   name LIKE '%Beginner_';

La consulta devuelve:

LIKE %Beginner_ resultado de la consulta que coincida con el รบltimo carรกcter รบnico

PostgreSQL DIFERENTE A Operator

Combine LIKE con NOT para devolver filas que no lo hagan No Coincide con el patrรณn. Por ejemplo, enumera todos los libros cuyo nombre no comience con โ€œPostโ€:

SELECT *
FROM
   Book
WHERE
   name NOT LIKE 'Post%';

La consulta devuelve:

NO COMO Post% resultado excluyendo libros que comienzan con Post

Solo un libro cumple la condiciรณn. Ahora enumera todos los libros cuyo nombre no No contienen la palabra โ€œHechoโ€:

SELECT *
FROM
   Book
WHERE
   name NOT LIKE '%Made%';

La consulta devuelve:

NO COMO %Made% resultado que devuelve tres libros coincidentes

Tres filas cumplen la condiciรณn.

Uso de LIKE con pgAdmin

Las mismas consultas tambiรฉn se pueden ejecutar grรกficamente dentro de la herramienta de consultas de pgAdmin.

% Comodรญn en pgAdmin

Paso 1) Inicia sesiรณn en pgAdmin.

Paso 2) En la barra de navegaciรณn de la izquierda, haga clic en Bases de datos, luego haga clic en Demo.

รrbol de navegaciรณn de pgAdmin con Bases de datos y Demo ampliados

Paso 3) Escriba la consulta en el Editor de consultas:

SELECT *
FROM
   Book
WHERE
   name LIKE 'Lear%';

Paso 4) Haga clic en Implementaciรณn.

Herramienta de consulta de pgAdmin con el botรณn Ejecutar en la barra de herramientas

El panel de resultados muestra los libros coincidentes:

Panel de resultados de pgAdmin para la consulta LIKE Lear%

Para buscar un libro que contenga la palabra "por" en cualquier parte de su tรญtulo:

Paso 1) Escriba lo siguiente en el Editor de consultas:

SELECT *
FROM
   Book
WHERE
   name LIKE '%by%';

Paso 2) Haga clic en Implementaciรณn.

Herramienta de consulta de pgAdmin ejecutando LIKE %by% consulta

El panel de resultados muestra:

Panel de resultados de pgAdmin para la consulta LIKE %by%

_ Comodรญn en pgAdmin

Paso 1) Inicia sesiรณn en pgAdmin.

Paso 2) En la barra de navegaciรณn de la izquierda, haga clic en Bases de datos, luego haga clic en Demo.

รrbol de navegaciรณn de pgAdmin que muestra el รกrbol de Bases de datos

Paso 3) Escriba la consulta en el Editor de consultas:

SELECT *
FROM
   Book
WHERE
   name LIKE '_earn%';

Paso 4) Haga clic en Implementaciรณn.

Herramienta de consulta de pgAdmin ejecutando LIKE _earn% query

El panel de resultados muestra:

Panel de resultados de pgAdmin para la consulta LIKE _earn%

Paso 5) Ejecuta el segundo ejemplo:

  1. Escriba la consulta en el Editor de consultas:
SELECT *
FROM
   Book
WHERE
   name LIKE '%Beginner_';
  1. Haga clic en Implementaciรณn.

Herramienta de consulta de pgAdmin ejecutรกndose LIKE %Beginner_ query

El panel de resultados muestra:

Panel de resultados de pgAdmin para la consulta LIKE %Beginner_

NO COMO en pgAdmin

Paso 1) Inicia sesiรณn en pgAdmin.

Paso 2) En la barra de navegaciรณn de la izquierda, haga clic en Bases de datos, luego haga clic en Demo.

รrbol de navegaciรณn de pgAdmin para el ejemplo NOT LIKE

Paso 3) Para ver la lista de todos los libros cuyo nombre no comienza con โ€œPostโ€, escriba:

SELECT *
FROM
   Book
WHERE
   name NOT LIKE 'Post%';

Paso 4) Haga clic en Implementaciรณn.

Herramienta de consulta de pgAdmin en ejecuciรณn NO COMO la consulta Post%

El panel de resultados muestra:

Panel de resultados de pgAdmin para la consulta NOT LIKE Post%

Detalles adicionales del resultado de pgAdmin para la consulta NOT LIKE

Para enumerar los libros cuyo nombre no contiene la palabra โ€œMadeโ€:

Paso 1) Escriba lo siguiente en el Editor de consultas:

SELECT *
FROM
   Book
WHERE
   name NOT LIKE '%Made%';

Paso 2) Haga clic en Implementaciรณn.

Herramienta de consulta de pgAdmin en ejecuciรณn NO COMO %Made% consulta

El panel de resultados muestra:

Panel de resultados de pgAdmin para la consulta NOT LIKE %Made%

Descarga la base de datos utilizada en este tutorial..

Preguntas Frecuentes

LIKE distingue entre mayรบsculas y minรบsculas, mientras que ILIKE realiza una coincidencia que no distingue entre mayรบsculas y minรบsculas. ILIKE es una PostgreSQL extensiรณn. Por ejemplo, el nombre ILIKE 'lear%' coincide tanto con "Learn" como con "LEAR". Utilice ILIKE cuando la entrada del usuario no distingue entre mayรบsculas y minรบsculas.

Utilice la clรกusula ESCAPE para declarar un carรกcter de escape y, a continuaciรณn, anteponga el comodรญn literal. Por ejemplo, WHERE code LIKE '50!%%' ESCAPE '!' encuentra valores que empiezan por "50%" porque el signo de exclamaciรณn escapa al signo de porcentaje.

Utilice LIKE para coincidencias simples de prefijos, sufijos o subcadenas. Cambie a expresiones regulares POSIX (~ y ~*) cuando necesite clases de caracteres, alternancia o cuantificadores. Las expresiones regulares son mรกs potentes, pero generalmente mรกs lentas que LIKE para patrones bรกsicos.

Sรญ. AI Los asistentes, como los copilotos de texto a SQL, traducen indicaciones como "encontrar clientes cuyo correo electrรณnico contenga acme" a nombre LIKE '%acme%' y explican la lรณgica de los comodines, lo que acelera la generaciรณn de informes ad hoc.

La IA generativa inspecciona el plan de consulta, recomienda un รญndice de trigramas (pg_trgm) para bรบsquedas LIKE con comodines iniciales y reescribe patrones que impiden el uso del รญndice. Esto convierte escaneos completos de tablas en bรบsquedas de milisegundos en tablas grandes. PostgreSQL mesas.

Resumir este post con: