0% encontró este documento útil (0 votos)
136 vistas15 páginas

Guía Completa de SQL JOINs y Funciones

El documento proporciona información sobre cláusulas SQL como JOIN, LEFT JOIN, RIGHT JOIN y GROUP BY, que se usan para combinar filas de varias tablas. También explica las cláusulas HAVING y LIMIT y funciones como CURDATE() y SUBDATE(). Finalmente, incluye ejemplos de consultas SQL y ejercicios prácticos.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
136 vistas15 páginas

Guía Completa de SQL JOINs y Funciones

El documento proporciona información sobre cláusulas SQL como JOIN, LEFT JOIN, RIGHT JOIN y GROUP BY, que se usan para combinar filas de varias tablas. También explica las cláusulas HAVING y LIMIT y funciones como CURDATE() y SUBDATE(). Finalmente, incluye ejemplos de consultas SQL y ejercicios prácticos.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

SQL

Ing Mg Mario Cesar Martìn Quito


Veràstegui.
Modelo de Datos de Pedidos
SQL JOIN

Una cláusula JOIN se utiliza para combinar filas de dos o más tablas, en función de una columna relacionada entre ellas.

Referencia :
[Link]
[Link]
SQL JOIN

INNER JOIN : Selecciona registros que tienen valores coincidentes en ambas tablas.
SELECT column_name(s)
FROM table1 INNER JOIN table2
ON table1.column_name = table2.column_name;

Ejemplo :

 selecciona todos los pedidos con información del cliente.


 selecciona todos los pedidos con información del cliente y del remitente

SELECT [Link], [Link]


FROM Orders INNER JOIN Customers
ON [Link] = [Link];

SELECT [Link], [Link], [Link]


FROM ((Orders INNER JOIN Customers
ON [Link] = [Link])
INNER JOIN Shippers ON [Link] = [Link]);
SQL JOIN

LEFT JOIN : La palabra clave LEFT JOIN devuelve todos los registros de la tabla izquierda (tabla1) y los
registros coincidentes de la tabla derecha (tabla2). El resultado es NULL desde el lado derecho, si no hay
coincidencia.

SELECT column_name(s)
FROM table1 LEFT JOIN table2
ON table1.column_name = table2.column_name;

Ejemplo :

 Seleccionar a todos los clientes y cualquier pedido que tenga

SELECT [Link], [Link]


FROM Customers LEFT JOIN Orders
ON [Link] = [Link]
ORDER BY [Link];
SQL JOIN

RIGHT JOIN : La palabra clave RIGHT JOIN devuelve todos los registros de la tabla derecha (tabla2) y
los registros coincidentes de la tabla izquierda (tabla1). El resultado es NULL del lado izquierdo, cuando
no hay coincidencia.

SELECT column_name(s)
FROM table1 RIGHT JOIN table2
ON table1.column_name = table2.column_name;

Ejemplo :

 Seleccionar todos los empleados y sus respectivos pedidos que hayan realizado

SELECT [Link], [Link], [Link]


FROM Orders RIGHT JOIN Employees
ON [Link] = [Link]
ORDER BY [Link];
Gupos

GROUP BY : se utiliza a menudo con funciones agregadas (COUNT, MAX, MIN, SUM, AVG) para agrupar el conjunto de
resultados por una o más columnas.

SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
ORDER BY column_name(s);

Ejemplo :

 Seleccionar el número de clientes en cada país.


 Seleccionar el número de clientes en cada país, ordenados de mayor a menor.
 Seleccionar el número de órdenes enviadas por cada remitente:

SELECT COUNT(CustomerID), Country


FROM Customers
GROUP BY Country;

SELECT COUNT(CustomerID), Country


FROM Customers
GROUP BY Country
ORDER BY COUNT(CustomerID) DESC;

SELECT [Link], COUNT([Link]) AS NumberOfOrders


FROM Orders LEFT JOIN Shippers ON [Link] = [Link]
GROUP BY ShipperName;
Having

HAVING : La cláusula HAVING se agregó a SQL porque la palabra clave WHERE no se podía utilizar con funciones agregadas.
SELECT column_name(s)
FROM table_name
WHERE condition
GROUP BY column_name(s)
HAVING condition
ORDER BY column_name(s);

Ejemplo :

 Enumerar el número de clientes en cada país. Sólo se incluyen países con más de 5 clientes.
 Enumera el número de clientes en cada país, ordenados de mayor a menor (sólo incluyen países con más de 5 clientes).

SELECT COUNT(CustomerID), Country


FROM Customers
GROUP BY Country
HAVING COUNT(CustomerID) > 5;

SELECT COUNT(CustomerID), Country


FROM Customers
GROUP BY Country
HAVING COUNT(CustomerID) > 5
ORDER BY COUNT(CustomerID) DESC;
LIMIT

LIMIT : Se utiliza para especificar el número de registros a devolver. es útil en tablas grandes con miles de registros. Devolver
un gran número de registros puede tener un impacto en el rendimiento.

SELECT column_name(s)
FROM table_name
WHERE condition
LIMIT number;

Ejemplo :

SELECT * FROM Customers


LIMIT 3;

SELECT * FROM Customers


WHERE Country='Germany'
LIMIT 3;
Funciones en MySQL
Funciones en MySQL
Funciones en MySQL
Funciones en MySQL
Funciones en MySQL

CURDATE() : Devuelve la fecha actual. Esta función devuelve la fecha actual como formato "AAAA-MM-DD" si se utiliza en un
contexto de cadena y como formato AAAAMMDD si se utiliza en un contexto numérico.

Ejemplo :
Select *,CURDATE() from tabla;

Select *
From tabla
Where fecha=CURDATE();

SUBDATE() : Devuelve una fecha después de que se ha restado un cierto intervalo de tiempo / fecha.

SUBDATE(date, INTERVAL value unit)


SUBDATE(date, days)

Ejemplo :

SELECT SUBDATE("2017-06-15", INTERVAL 10 DAY);


SELECT SUBDATE("2017-06-15 [Link]", INTERVAL 15 MINUTE);
SELECT SUBDATE(CURDATE(), INTERVAL 15 MINUTE);
Ejercicios;

 Escribir un query para obtener la facturación total de la empresa.


 Mediante un query obtener una lista con los números de Ordenes, la cantidad de productos diferentes vendidos y el total
facturado.
 Mediante SQL obtener un listado con los nombres de las ciudades junto con la cantidad de ordenes correspondientes a esa
ciudad.
 Escribir un query que devuelva la cantidad de clientes, cuando esta exceda los 100.
 Mediante SQL obtener un listado con los nombres de las ciudades y el total facturado para cada ciudad.
 Mediante SQL obtener la cantidad vendida de cada producto.
 Mediante SQL obtener la cantidad vendida de cada producto por cliente.
 Mediante SQL obtener los 5 productos mas vendidos..
 Mediante SQL obtener los 5 productos mas vendidos en los ultimos 6 meses.
 Mediante SQL obtener los 5 productos de mayor venta en los ultimos 6 meses.

También podría gustarte