La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

DML Transact SQL Sesión III Agrupando y resumiendo información.

Presentaciones similares


Presentación del tema: "DML Transact SQL Sesión III Agrupando y resumiendo información."— Transcripción de la presentación:

1 DML Transact SQL Sesión III Agrupando y resumiendo información

2 Duración 2 horas

3 Objetivo Particular Al concluir el modulo el participante será capaz de realizar consultas que incluyan funciones de agregado y agrupación de datos, en la representación de resúmenes de información.

4 Introducción Si bien el manejo de la instrucción select se revisó en la unidad pasada, su funcionalidad y capacidades no se limitan a tan solo mostrar información filtrada, se pueden especificar algunas opciones más para el mostrado de información y formateo de los datos.

5 Mostrando los primeros "n" Registros Objetivo específico: Al finalizar el participante mostrará los primeros registros obtenidos de una consulta a través de la cláusula TOP n

6 Mostrando los primeros "n" Registros Además de poder mostrar los elementos de forma completa o distinguiendo los registros repetidos, SQL permite mostrar los primeros “n” registros obtenidos por una consulta, para ello bastará con usar la función TOP n

7 Mostrando los primeros "n" Registros TOP n [PERCENT] n especifica el número de filas que se devuelven. Si no se especifica PERCENT, n es el número de filas que se va a devolver. Si se especifica PERCENT, n es el porcentaje de filas del conjunto de resultados que se va a devolver.

8 Mostrando los primeros "n" Registros Mostrará solamente los primeros 10 registros de la tabla authors. Select top 10 * from authors

9 Mostrando los primeros "n" Registros Mostrará Solamente el 10% de los registros de la tabla authors. Select top 10 percent * from authors

10 Mostrando los primeros "n" Registros Mostrará los 10 primeros registros de la tabla authors usando ordenamiento. Select top 10 * from authors order by au_lname

11 Uso de funciones de Agregado Objetivo específico: AL finalizar el participante usará funciones de agregado como elementos de resúmenes de información devuelta por la instrucción Select.

12 Uso de funciones de Agregado El lenguaje de programación Transact- SQL proporciona tres tipos de funciones:  Funciones de conjunto de filas  Funciones de agregado  Funciones escalares

13 Uso de funciones de Agregado Las funciones de agregado realizan un cálculo sobre un conjunto de valores y devuelven un solo valor. Con la excepción de COUNT, las funciones de agregado omiten los valores NULL.

14 Uso de funciones de Agregado AVG Devuelve la media de los valores de un grupo. Los valores nulos se pasan por alto. Sintaxis: AVG ( [ ALL | DISTINCT ] expression )

15 Uso de funciones de Agregado COUNT Devuelve el número de elementos de un grupo. Sintaxis: COUNT ( { [ ALL | DISTINCT ] expression ] | * } )

16 Uso de funciones de Agregado MAX Devuelve el valor máximo de la expresión. Sintaxis : MAX ( [ ALL | DISTINCT ] expression )

17 Uso de funciones de Agregado MIN Devuelve el valor mínimo de la expresión. Sintaxis: MIN ( [ ALL | DISTINCT ] expression )

18 Uso de funciones de Agregado SUM Devuelve la suma de todos los valores o de sólo los valores DISTINCT en la expresión especificada. SUM sólo puede utilizarse con columnas numéricas. Los valores nulos se pasan por alto. Sintaxis: SUM ( [ ALL | DISTINCT ] expression )

19 Uso de funciones de Agregado STDEV Devuelve la desviación típica estadística de todos los valores de la expresión especificada. Sintaxis: STDEV ( expression )

20 Uso de funciones de Agregado STDEVP Devuelve la desviación típica estadística del llenado para todos los valores de la expresión especificada. Sintaxis: STDEVP ( expression )

21 Uso de funciones de Agregado VAR Devuelve la varianza estadística de todos los valores de la expresión dada. Sintaxis: VAR ( expression )

22 Uso de funciones de Agregado VARP Devuelve la varianza estadística del llenado para todos los valores de la expresión dada. Sintaxis: VARP ( expression )

23 Fundamentos de Agrupación (uso de Group by) Objetivo específico: Al finalizar el estudiante agrupará los registros de datos obtenidos por la sentencia Select.

24 Fundamentos de Agrupación (uso de Group by) La cláusula GROUP BY se usa para producir valores de agregado para cada fila del conjunto de resultados. Cuando se usan sin una cláusula GROUP BY, las funciones de agregado sólo devuelven un valor de agregado para la instrucción SELECT.

25 Fundamentos de Agrupación (uso de Group by) USE NorthwindSELECT OrdD.ProductID AS ProdID, SUM(OrdD.Quantity) AS AmountSoldFROM [Order Details] AS OrdD JOIN Products as Prd ON OrdD.ProductID = Prd.ProductID AND Prd.CategoryID = 2GROUP BY OrdD.ProductID

26 Fundamentos de Agrupación (uso de Group by) A continuación de las palabras clave GROUP BY se coloca una lista de columnas, conocidas como las columnas de agrupamiento. La cláusula GROUP BY restringe las filas del conjunto de resultados.

27 Fundamentos de Agrupación (uso de Group by) Los elementos permitidos en la lista de selección son:  Las columnas de agrupamiento.  Expresiones que devuelven un solo valor por cada valor de las columnas de agrupamiento, como, por ejemplo, las funciones de agregado que tienen un nombre de columna como uno de sus parámetros. Éstas se conocen como agregados vectoriales.

28 Filtrado de grupos (cláusula having) Objetivo específico: El participante al finalizar usará la cláusula Having para el filtrado de las agrupaciones de datos.

29 Filtrado de grupos (cláusula having) La cláusula HAVING establece las condiciones de la cláusula GROUP BY de la misma forma que WHERE interactúa con SELECT. Mientras que las condiciones de búsqueda de WHERE se aplican antes de que se produzca la operación de agrupamiento, las condiciones de búsqueda de HAVING se aplican después.

30 Filtrado de grupos (cláusula having) En esta consulta se buscan publicadores cuyas ventas anuales hasta la fecha hayan sido superiores a 40.000 dólares. USE pubsSELECT pub_id, total = SUM(ytd_sales)FROM titlesGROUP BY pub_idHAVING SUM(ytd_sales) > 40000

31 Filtrado de grupos (cláusula having) Para asegurarse de que hay como mínimo seis libros involucrados en los cálculos para cada publicador, este ejemplo utiliza HAVING COUNT(*) > 5 para eliminar los publicadores que devuelven totales con menos de seis libros. USE pubsSELECT pub_id, total = SUM(ytd_sales)FROM titlesGROUP BY pub_idHAVING COUNT(*) > 5

32 Filtrado de grupos (cláusula having) En el ejemplo siguiente se muestra cómo agrupar titles por publicadores, incluyendo sólo aquellos cuyo número de identificación sea superior a 0800, hayan pagado más de 15.000 dólares en adelantos totales y vendan libros por un promedio de menos de 20 dólares. SELECT pub_id, SUM(advance) AS AmountAdvanced, AVG(price) AS AveragePrice FROM pubs.dbo.titlesWHERE pub_id > '0800‘ GROUP BY pub_idHAVING SUM(advance) > $15000 AND AVG(price) < $20

33 Filtrado de grupos (cláusula having) ORDER BY. En este ejemplo se muestra para definir el orden en el que se devuelven las filas de una cláusula GROUP BY: SELECT pub_id, SUM(advance) AS AmountAdvanced, AVG(price) AS AveragePrice FROM pubs.dbo.titlesWHERE pub_id > '0800' AND price >= $5GROUP BY pub_idHAVING SUM(advance) > $15000 AND AVG(price) < $20ORDER BY pub_id DESC

34 Conclusión La agrupación y resumen de información son cosas que el participante ha desarrollado en el transcurso de esta unidad, partió de mostrar los primeros registros de una consulta y finalmente creando y filtrando grupos de datos. Ahora es el momento de realizar la evaluación correspondiente a la unidad.


Descargar ppt "DML Transact SQL Sesión III Agrupando y resumiendo información."

Presentaciones similares


Anuncios Google