Cargando



PostgreSQL - Elementos Únicos

En este tutorial estaremos viendo algunos de los elementos únicos que nos facilitan la vida cuando estamos trabajando con PostgreSQL, ya que nos permiten ahorrarnos consultas adicionales y jugar un poco con la lógica de las estructuras.


oct 31 2013 21:44
Profesional
nov 01 2013 19:41
A pesar que PostgreSQL es el motor de base de datos que cumple de mejor forma el estándar ANSI-SQL, esto no quiere decir que no posea características únicas, que lo distancien de otras soluciones de la competencia y le permitan posicionarse muy arriba en el mundo de las bases de datos relacionales, estás cosas únicas muchas veces son atajos que nos ahorran tener que hacer múltiples query contra las tablas para obtener los datos necesarios, sin embargo si queremos que todo quede en cumplimiento del estándar no deberíamos utilizarlos.

DISTINCT ON

Este es uno de los favoritos en el uso, es una re-interpretación del DISTINCT, excepto que nos permite definir que columnas son las que van a considerarse distintas en la consulta y además en caso que hayan más columnas podremos definir el orden para designar la preferida.

Veamos en la siguiente imagen un ejemplo de a que nos referimos, en este ejemplo vamos a obtener el número tract de una tabla:


La cláusula ON puede tomar varias columnas para hacer la aplicación del DISTINCT y luego con el ***** BY debemos iniciar con las columnas que usamos con el DISTINCT ON y luego nuestras columnas preferidas.

LIMIT y OFFSET

Estas dos cláusulas LIMIT y OFFSET en el query nos ayudan a limitar el número de registros retornados por la consulta. Pueden ser utilizados en conjunto o separados; a pesar de todo no son únicos en PostgreSQL, de hecho son copiados de MySQL.

Un OFFSET de 0 es equivalente a no utilizar la cláusula, usualmente utilizaremos estos dos elementos en conjunción con un ***** BY.

Veamos un ejemplo práctico para ver de mejor manera cómo funcionan los mismos:




Como vemos estamos incorporando estas dos clausulas al query que ya habíamos visto, notamos que limitamos el resultado a 3 registros y con el OFFSET le decimos que inicie luego del segundo resultado en el orden, por lo que el primer resultado será el tercer registro.

ILIKE

Esta cláusula nos permite hacer búsquedas dentro de los textos de forma independiente de las mayúsculas, nos sirve bastante ya que podemos elaborar búsquedas muy amplias sin temor a que se nos queden resultados por fuera debido a la forma de escritura del término a ubicar.

La consulta con la cual podemos realizar esto es el siguiente:

SELECT tract_name FROM census.lu_tracts WHERE tract_name ILIKE '%duke%';

Si nos fijamos el resultado que produciría esto sería algo así:


pg_elementou3.jpg


Como vemos es bastante sencillo. Existe una forma de emular este comportamiento en ANSI-SQL y es haciendo uso de la función UPPER en ambos extremos de la búsqueda, sin embargo con este operador único de PostgreSQL nos ahorramos más trabajo.

Con esto terminamos el tutorial, ya conocemos un poco más de las ventajas de PostgreSQL al momento de utilizar sus elementos únicos que nos ayudan a darle una extensión a la funcionalidad del ANSI-SQL y de esta forma tener una gama de opciones mucho mayor para cubrir distintas necesidades que puedan surgir en las Base de Datos que administremos.

¿Te ayudó este Tutorial?


Sin comentarios, sé el primero!

No esperes más y entra en Solvetic
Deja tus comentarios y aprovecha las ventajas de la cuenta de usuario ¡Únete!

X