Sentencia group by sql

Solo disponible en BuenasTareas
  • Páginas : 6 (1421 palabras )
  • Descarga(s) : 0
  • Publicado : 17 de junio de 2011
Leer documento completo
Vista previa del texto
ACTIVIDAD 4.3
GROUP BY:
Agrupa un conjunto de filas seleccionado en un conjunto de filas de resumen por los valores de una o más columnas o expresiones de SQL Server 2008 R2. Se devuelve una fila para cada grupo. Las funciones de agregado de la lista de <selección> de la cláusula SELECT proporcionan información sobre cada grupo en lugar de filas individuales.
La cláusula GROUP BY tieneuna sintaxis que cumple la norma ISO y otra sintaxis que no cumple dicha norma. Sólo se puede usar un estilo de sintaxis en cada instrucción SELECT. Use la sintaxis que cumple la norma ISO para todos los trabajos nuevos. La sintaxis que no cumple dicha norma sólo se incluye por motivos de compatibilidad con versiones anteriores.
En este tema, una cláusula GROUP BY se puede describir como generalo como simple:
* Una cláusula GROUP BY general incluye los elementos GROUPING SETS, CUBE, ROLLUP, WITH CUBE o WITH ROLLUP.
* Una cláusula GROUP BY simple no incluye GROUPING SETS, CUBE, ROLLUP, WITH CUBE ni WITH ROLLUP. GROUP BY (), total general, se considera una cláusula GROUP BY simple.
Breve explicación:
La cláusula group by se utiliza cuando las funciones de agregación se aplican aun grupo de conjuntos de tuplas, y la cláusula having se utiliza para poner una condición a los grupos. Si en una misma consulta aparece where y having, se aplica primero el predicado de where.
WHERE selecciona las filas a mostrar antes de que sean agrupadas o procesadas por una función de agregación, mientras HAVING selecciona las filas después de que estas hayan sido procesadas o computadas,por lo tanto, la cláusula WHERE no debe contener funciones de agrupación o agregación, mientras que la cláusula HAVING siempre contiene funciones de agregación, es permitido escribir clausulas HAVING que no contengan agrupación.

ACTIVIDAD 4.4
Una subconsulta es una consulta anidada en una instrucción SELECT, INSERT, UPDATE o DELETE, o bien en otra subconsulta. Las subconsultas se puedenutilizar en cualquier parte en la que se permita una expresión. Se llama también subconsulta a una consulta o selección interna, mientras que la instrucción que contiene una subconsulta también es conocida como consulta o selección externa. Muchas de las instrucciones Transact-SQL que incluyen subconsultas se pueden formular también como combinaciones. Otras preguntas se pueden formular sólo consubconsultas. En Transact-SQL, normalmente no hay diferencias de rendimiento entre una instrucción que incluya una subconsulta y una versión semánticamente equivalente que no la incluya. Sin embargo, en algunos casos en los que se debe comprobar la existencia de un elemento, una combinación produce mejores resultados. De lo contrario, se debe procesar la consulta anidada para cada resultado de la consultaexterna con el fin de garantizar la eliminación de los duplicados. En tales casos, la utilización de combinaciones producirá mejores resultados.
Una subconsulta anidada en la instrucción externa SELECT tiene los componentes siguientes:
* Una consulta SELECT normal, que incluye los componentes normales de la lista de selección.
* Una cláusula normal FROM que incluye uno o varios nombresde tablas o vistas.
* Una cláusula opcional WHERE.
* Una cláusula opcional GROUP BY.
* Una cláusula opcional HAVING.
Hay tres tipos básicos de subconsultas, que son las siguientes:
* Las que operan en listas especificadas con IN o modificadas por un operador de comparación mediante ANY o ALL.
* Las que se especifican con un operador de comparación sin modificar y deben devolverun solo valor.
* Las que son pruebas de existencia especificadas con EXISTS.

TIPOS de JOIN:
SQL especifica dos tipos de joins : interno y externo.
El programador escribe un join predicado para identificar los registros para JOI Ning. Si el predicado evalúa verdadero, entonces los registros combinados se insertan en la tabla Joined (temporal) ; de otra forma no contribuye. Cualquier...
tracking img