ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

SQL Consultas Avanzadas


Enviado por   •  6 de Febrero de 2014  •  1.062 Palabras (5 Páginas)  •  566 Visitas

Página 1 de 5

“Programación en Sistemas Gestores de Base de Datos”

Tema: 1.2.1Consultas Avanzadas (SQL)

H. Veracruz Ver, 16 de Octubre del 2013

Group by

La cláusula GROUP BY se usa para generar 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 una instrucción SELECT. Después de las palabras clave GROUP BY aparece una lista de columnas, conocidas como las columnas de agrupación. Los elementos que se pueden especificar en la lista de selección cuando una instrucción SELECT contiene una cláusula GROUP BY están restringidos. Los elementos permitidos en la lista de selección son los siguientes:

 Las columnas de agrupación.

 Expresiones que devuelven un solo valor por cada valor de las columnas de agrupación, por ejemplo, las funciones de agregado que tienen un nombre de columna como uno de sus parámetros. Se conocen como agregados vectoriales.

Sintaxis:

Ejemplos:

1.Construyamos una consulta que nos devuelva el total de empleados por sexo.

2. ¿Cuantos perros de cada sexo hay en total actualmente en el centro?

3. ¿Cuantos ejemplares contiene actualmente cada jaula o ubicación?

4. ¿Cuantos ejemplares de cada especie, y dentro de cada especie de cada sexo, hay actualmente en el centro?

5. Deseamos saber las ventas totales para cada negocio.

Link

http://technet.microsoft.com/es-es/library/ms189288(v=sql.90).aspx

http://deletesql.com/viewtopic.php?f=5&t=13

http://www.1keydata.com/es/sql/sql-group-by.php

Having

Especifica una condición de búsqueda para un grupo o agregado. HAVING solo se puede utilizar con la instrucción SELECT. Normalmente, HAVING se utiliza en una cláusula GROUP BY. Cuando no se utiliza GROUP BY, HAVING se comporta como una cláusula WHERE. Para la condición de selección se pueden utilizar los mismos tests de comparación descritos en la cláusula WHERE, también se pueden escribir condiciones compuestas (unidas por los operadores OR, AND, NOT), pero existe una restricción.

En la condición de selección sólo pueden aparecer:

 Valores constantes

 Funciones de columna columnas de agrupación (columnas que aparecen en la cláusula GROUP BY) o cualquier expresión basada en las anteriores.

Sintaxis:

Ejemplos:

1.Queremos saber las oficinas con un promedio de ventas de sus empleados mayor que 500.000 ptas.

2. ¿Qué ubicaciones del centro de mascotas tienen más de dos ejemplares?

3. ¿Qué ubicaciones del centro de mascotas tienen tan solo un ejemplar?

4. Si queremos saber la cantidad de libros agrupados por editorial pero considerando sólo algunos grupos, por ejemplo, los que devuelvan un valor mayor a 2, usamos la siguiente instrucción:

5. Queremos el promedio de los precios de los libros agrupados por editorial, pero solamente de aquellos grupos cuyo promedio supere los 25 pesos:

6. Queremos el promedio de los precios agrupados por editorial, de aquellas editoriales que tienen más de 2 libros:

Link

http://www.sqlserverya.com.ar/temarios/descripcion.php?cod=44&punto=38

http://deletesql.com/viewtopic.php?f=5&t=14

http://www.aulaclic.es/sql/t_4_2.htm

http://technet.microsoft.com/es-es/library/ms180199.aspx

Combinacion externa (Outer Join)

La combinación externa puede ser diestra o siniestra, LEFT OUTER JOIN o RIGHT OUTER JOIN. Con LEFT OUTER JOIN obtenemos todos los registros de en la tabla que situemos a la izquierda de la clausula JOIN, mientras que con RIGHT OUTER JOIN obtenmos el efecto contrario.De este modo expresamos el deseo de considerar todos los registros de la tabla a la izquierda o a la derecha de la cláusula OUTER JOIN, aunque no se hallen coincidencias con la otra tabla según la cláusula ON.

Sintaxis:

Ejemplos:

1. La consulta que muestra los cursos y sus profesores aunque el curso no tenga profesor asignado

2. La consulta que muestra los cursos y sus profesores aunque el curso no tenga profesor asignado.Si invertimos el orden de las tablas y usamos RIGHT OUTER JOIN, o simplemente RIGHT JOIN, expresión equivalente simplificada aplicable también a LEFT JOIN, el resultado es el mismo.

3. Consulta que muestra todos los cursos acompañados del profesor que lo imparte. Si el curso no tiene profesro definido o bien el campo APELLIDOS no contiene una "E", los campos de la tabla PROFESORES se mostrarán a nulo:

4. Alumnos

...

Descargar como (para miembros actualizados)  txt (8.1 Kb)  
Leer 4 páginas más »
Disponible sólo en Clubensayos.com