Las funciones mas importantes en SQL

Sql Server cuenta con una gran amplia variedad de funciones estructuradas para que puedas realizar desarrollos y consultoría dentro de su motor de bases de datos. Si estás comenzando a utilizar esta herramienta o estas iniciando un camino de aprendizaje, es importante que debas conocer las principales funciones que a continuación te compartiré.

Primero, hay que saber que SQL Server tiene su propio lenguaje (que es parecido a otros motores de bases de datos estructurados) y al igual que todo lenguaje informático, contiene funciones incorporadas para realizar cálculos dentro de la información en bases de datos.

Para comenzar con el pie derecho, vamos a conocer como se dividen los grupos de instrucciones y funciones (aunque hay muchos mas y al final de esta entrada compartiremos la fuente para llegar a ellas):

Instrucciones más utilizadas SQL. Son instrucciones para extraer datos, consultarlos, transformarlos y/o convertirlos.

SELECT

La instrucción SELECT se utiliza para seleccionar distintos datos de contiene una base de datos, A continuación mostramos un ejemplo:

Ejemplo de como usar la instrucción:

SELECT Nombre, Apellidos, …

FROM Datos_Clientes;

SELECT DISTINCT:

Para seleccionar los distintos valores de una tabla se añade la instrucción:

Ejemplo de como usar la instrucción:

SELECT DISTINCT Nombre, Apellidos, …

FROM Datos_Clientes;

WHERE

La instrucción WHERE es utilizada para establecer condiciones y filtros a la consulta (también se le llama query).

Ejemplo de como usar la instrucción:

SELECT columna1, …

FROM nombre_tabla

WHERE condición;.

AND, OR, NOT

 Los operadores AND, OR y NOT se utilizan en la cláusula WHERE, dependiendo del tipo de condición que se quiera establecer.

Ejemplo de como usar la instucción:

SELECT columna1

FROM nombre_tabla 

WHERE NOT condición1 AND/OR condición2;

IN

Este comando permite concretar valores múltiples en dentro de la cláusula WHERE.

Ejemplo de como usar la instrucción:

SELECT columna1

FROM nombre_tabla

WHERE nombre_columna IN (valor1, valor2, valor3, valor4,..);

BETWEEN

Esta instruccion de SQL selecciona valores dentro de un rango que se especifica en la cláusula WHERE. Los valores pueden ser fechas, números o texto.

Ejemplo de como usar la instrucción:

SELECT columna_1

FROM nombre_tabla

WHERE nombre_columna BETWEEN valor_1 AND valor_2;

LIKE

El comando LIKE es utilizado en la cláusula WHERE para buscar un valor que contenga los caracteres que se especifiquen en una columna concreta.

Ejemplo de como usar la instucción:

SELECT columna1

FROM nombre_tabla

WHERE columna1 LIKE ‘%caracteres_a_buscar%’;

ORDER BY

Esta instrucción sirve para ordenar los resultados de una consulta en orden ascendente o descendente.

Ejemplo de como usar la instrucción:

SELECT columna1

FROM nombre_tabla

ORDER BY columna1 ASC|DESC;

GROUP BY

Cuando se utilizan funciones de agregación (que vamos a explicar mas adelante), se utiliza GROUP BY para agrupar el resultado de la query en una o varias columnas.

Ejemplo de como usar la instrucción:

SELECT Columna1, COUNT( Columna2)

FROM nombre_tabla

WHERE condición

GROUP BY Columna1;

HAVING

Esta instrucción es utilizada con funciones de agregación en la sección de WHERE, colocando un condicional para que la información extraída cumpla con ese requisito.

Ejemplo de como usar la instrucción:

SELECT columna1

FROM nombre_tabla

WHERE condición

GROUP BY columna1

HAVING condición

ORDER BY columna1;

JOIN

La sentencia JOIN (unir, combinar) de SQL permite combinar registros de una o más tablas en una base de datos. En el Lenguaje de Consultas Estructurado (SQL) hay tres tipos de JOIN: interno, externo y cruzado. El estándar ANSI del SQL especifica cinco tipos de JOIN: INNER, LEFT OUTER, RIGHT OUTER, FULL OUTER y CROSS. Una tabla puede unirse a sí misma, produciendo una auto-combinación, SELF-JOIN.

INNER JOIN

Selecciona todas las filas de las dos columnas siempre y cuando haya una coincidencia entre las columnas en ambas tablas. Es el tipo de JOIN más común.

Sintaxis:

SELECT nombreColumna(s)

FROM tabla1

INNER JOIN tabla2

ON tabla1.nombreColumna=table2.nombreColumna;

Ejemplo:

 SELECT *

 FROM  empleado

    INNER JOIN departamento

      ON empleado.IDDepartamento = departamento.IDDepartamento

LEFT JOIN

Esta instrucción mantiene todas las filas de la tabla izquierda (la tabla1). Las filas de la tabla derecha se mostrarán si hay una coincidencia con las de la izquierda. Si existen valores en la tabla izquierda pero no en la tabla derecha, ésta mostrará null.

Sintaxis:

SELECT nombreColumna(s)

FROM tabla1

LEFT JOIN tabla2

ON tabla1.nombreColumna=tabla2.nombreColumna;

Ejemplo:

SELECT *

 FROM  empleado

    LEFT OUTER JOIN departamento

      ON empleado.IDDepartamento = departamento.IDDepartamento

RIGHT JOIN

Es similar el funcionamiento a LEFT JOIN pero al revés. Ahora se mantienen todas las filas de la tabla derecha (tabla2). Las filas de la tabla izquierda se mostrarán si hay una coincidencia con las de la derecha. Si existen valores en la tabla derecha pero no en la tabla izquierda, ésta se mostrará null.

Sintáxis:

SELECT nombreColumna(s)

FROM tabla1

RIGHT JOIN tabla2

ON tabla1.nombreColumna=tabla2.nombreColumna;

Ejemplo:

 SELECT *

 FROM  empleado

    RIGHT OUTER JOIN departamento

      ON empleado.IDDepartamento = departamento.IDDepartamento

FULL JOIN

Mientras que LEFT JOIN muestra todas las filas de la tabla izquierda, y RIGHT JOIN muestra todas las correspondientes a la tabla derecha, FULL OUTER JOIN (o simplemente FULL JOIN) se encarga de mostrar todas las filas de ambas tablas, sin importar que no existan coincidencias (usará NULL como un valor por defecto para dichos casos).

Sintaxis:

SELECT * FROM tabla1 FULL JOIN tabla2 WHERE tabla1.columna1 = tabla2.columna1

Ejemplo:

SELECT

 E.Nombre as ‘Empleado’,

 D.Nombre as ‘Departamento’

FROM Empleados E

FULL JOIN Departamentos D

ON E.DepartamentoId = D.Id

Te comparto un complemento visual de como es el funcionamiento de cada tipo de JOIN de acuerdo a lo que hemos revisado:

Funciones de agregación en SQL. Devuelven un sólo valor, calculado con los valores de una columna.

AVG()

La media o promedio de los valores.

Ejemplo de como usar la función:

SELECT AVG (nombreColumna) FROM nombreTabla;

COUNT()

Devuelve el número de filas que cumplen con un criterio ingresado.

Sintaxis:

SELECT COUNT (nombreColumna) FROM nombreTabla;

MAX()

Regresa el valor máximo de una columna seleccionada.

Sintaxis:

SELECT MAX (nombreColumna) FROM nombreTabla;

MIN()

Devuelve el valor mínimo o más pequeño en una columna seleccionada.

Sintaxis:

SELECT MIN (nombreColumna) FROM nombreTabla;

SUM()

Esta función se utiliza para realizar la sumatoria de una columna numérica seleccionada.

Sintaxis:

SELECT SUM (nombreColumna) FROM nombreTabla;

GROUP BY

Es una sentencia que va muy ligada a las funciones agregadas y sirve para agrupar una o mas columnas.

Sintaxis:

SELECT nombreColumna, funcion_agregada(nombreColumna)

FROM nombreTabla

WHERE nombreColumna operador valor

GROUP BY nombreColumna;

Ejemplo en un uso real, utilizando una tabla de pedidos de cliente:

SELECT Clientes.NombreCliente, Productos.NombreProducto, COUNT (Pedidos.PedidoID) AS NumeroPedidos

FROM ((Pedidos

INNER JOIN Clientes ON Pedidos.ClienteID=Clientes.ClienteID)

INNER JOIN Productos ON Pedidos.ProductoID=Productos.ProductoID)

GROUP BY NombreCliente, NombreProducto;

Funciones escalares SQL. Dan como resultado un sólo valor basándose en el valor de entrada.

UCASE()

Convierte un campo a mayúsculas

Sintaxis:

SELECT UCASE (nombreColumna) FROM nombreTabla;

LCASE()

Convierte un campo a minúsculas

Sintaxis:

SELECT LCASE (nombreColumna) FROM nombreTabla;

MID()

Extrae caracteres de un campo de texto

Sintaxis:

SELECT MID (nombreColumna, inicio [, longitud]) AS unAlias FROM nombreTabla;

LEN()

Devuelve la longitud de un campo de texto

Sintaxis:

SELECT LEN (nombreColumna) FROM nombreTabla;

NOW()

Devuelve la hora y fecha actuales del sistema

Sintaxis:

SELECT NOW() FROM nombreTabla;

FORMAT()

Da formato a un campo para mostrarlo

Sintaxis

SELECT FORMAT(nombreColumna, formato) FROM nombreTabla;

Esto no se acaba aquí, si deseas saber más acerca de funciones de Microsoft SQL Server, te compartimos el enlace donde puedes ver ejemplos de estas y el resto de funciones dando clic aquí

Sin embargo, si deseas tener una consultoría, un curso sobre este tema o algún tipo de servicio que involucre SQL server, Digitnow te ofrece esta opción personalizada para que te ayudemos a cumplir tus objetivos, solo mándanos tus dudas o cómo te podemos ayudar y dar soporte llenando el siguiente formulario:

Follow by Email
Instagram
YouTube
LinkedIn
LinkedIn
Share
WhatsApp
es_MXES_MX