Tiempo de lectura:2 Minutos, 23 Segundos

Utilizamos el operador LIKE en PostgreSQL en el where para comprobar si cierta parte del valor de un campo contiene la palabra indicada. Por ejemplo, lo podemos utilizar en un campo que contiene nombre y apellidos y únicamente queremos obtener los registros donde su nombre sea Miguel sin importar el apellido. Vamos a verlo…

Sintaxis

La sintaxis del operador LIKE es la siguiente:

En el ejemplo anterior puedes observar como tenemos un caracter especial, %, este indica que despues de la palabra Miguel puede contener más letras. Si colocamos el % por delante le indicaríamos que debe acabar en Miguel y por tanto por delante podría tener cualquier otro caracter.

Puedes combinar el operador LIKE junto al NOT para indicar que el valor del campo no debe contener esos valores:

Tanto LIKE como NOT LIKE pueden hacer uso de los siguientes comodines:

  • %: el porcentaje indica uno o más caracteres.
  • _: el guión bajo indica un único caracter.

Importante

PostgreSQL soporta el operador ILIKE. Se utiliza igual que LIKE pero la diferencia es que no es sensible a mayusculas y minúsculas.

Alternativas

PostgreSQL proporciona alternativas al operador LIKE. Puedes usar estas equivalencias:

OperadorEquivalencia
~~LIKE
~~*ILIKE
!~~NOT LIKE
!~~*NOT ILIKE

Ejemplos

En el siguiente ejemplo utilizamos el operador LIKE para mostrar solo aquellos empleados donde su apellido sea Troyano. Recuerda que nuestro campo de nombre contiene nombre y apellidos.

En este otro ejemplo combinamos like con not like. Le estamos indicando que el nombre no puede acabar en Troyano y que ademas debe empezar por Pilar.

En este otro ejemplo estamos mostrando todos los empleados donde su segunda letra sea un i:

Ejemplo completo

Copia y pega el siguiente código en tu consola de PostgreSQL y realiza paso a paso leyendo los comentarios:

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

Este sitio está protegido por reCAPTCHA y se aplican la política de privacidad y los términos de servicio de Google.

Perfiles en Redes Sociales