SlideShare une entreprise Scribd logo
1  sur  21
Recuperación de Datos




                                                        Conceptos básicos




                   http://www.dosideas.com
Mayo de 2009                          Dos Ideas - La visión de Sistemas desde el Desarrollo
Cláusula WHERE

Se pueden restringir las filas recuperadas usando la cláusula WHERE. Una
     cláusula WHERE contiene una condición lógica, la cual usa operadores de
     comparación. Las filas procesadas son aquellas en que los datos que
     contienen satisfacen la/s condición/es lógicas.
Operadores de
 Comparación
Operadores de
                                                      Comparación
Like: No siempre se conoce el valor exacto a buscar. Se pueden seleccionar
      filas que coincidan con un patrón de caracteres usando el operador LIKE.
Operadores de
                                                Comparación
Is null, Is not null: testean valores nulos.
Condiciones múltiples
Cláusula ORDER BY

El orden de las filas recuperadas por el resultado de una consulta es indefinido.
      Server no puede buscar y traer las filas en el mismo orden para una
      consulta ejecutada dos veces. La cláusula ORDER BY puede ser utilizada
      para ordenar las filas.




El orden por defecto es ascendente, entonces:
•     Los valores numéricos se muestran con el valor más bajo en primer lugar,
      por ejemplo 1 a 999.
•     Los valores de fecha se muestran con el valor más temprano en primer
      lugar, por ejemplo 01-01-1992 antes que 01-01-1995.
•     Los valores de caracteres se muestran en orden alfabético, por ejemplo
      primero la A y último la Z.
•     Los valores nulos se muestran últimos en las secuencias ascendentes y
      primeros en las secuencias descendentes.
Funciones condicionales
•   NVL (expresión1, expresión2): evalúa la expresión expresión1, si la
    misma es nula entonces devuelve expresión2, sino devuelve expresión1.
    Esta función opera como un "traductor de valores nulos".


•   DECODE (expresión, valor1, código1, ..., valorN, códigoN, default): evalúa
    la expresión expresión, si la misma es igual a valor1, devuelve código1, si
    es igual a valor2, devuelve código2, y así sucesivamente hasta comparar
    expresión con valorN. Si no coincide con ninguna expresión representada
    por los parámetros "valor", entonces devuelve default.  


•   CASE: Las expresiones CASE pueden clasificarse en dos tipos generales:
    expresiones sencillas y expresiones de múltiples condiciones.
Funciones de Grupo
•   Permiten obtener información agrupada que existe en una tabla,
    perdiendo de esta manera el detalle de cada fila en particular.
•   A excepción de la función COUNT(*), ignoran los valores nulos. Se puede
    usar la función NVL, en el argumento de la función de grupo, para
    sustituir un valor nulo por otro valor.
Funciones de Grupo
Cláusula GROUP BY
•   Si se usa la cláusula GROUP BY en una sentencia SELECT, se dividen las
    filas de una tabla o vista consultada en grupos. Si se omite la cláusula
    GROUP BY, se aplican las funciones de grupo en la lista SELECT a todas
    las filas en la tabla o vista consultada.
Cláusula HAVING
Se usa para restringir cuáles grupos de filas, definidas por la cláusula GROUP BY, son retornadas por la consulta. Se procesan las cláusulas WHERE, GROUP BY y HAVING de la siguiente
   manera:
        1.Si la sentencia contiene una cláusula WHERE, se remueven todas las filas que no la satisfacen.
        2.Se calcula y da formato a los grupos como se especifica en la cláusula GROUP BY.
        3.Server remueve todos los grupos que no satisfacen la cláusula HAVING.
Se deben especificar las cláusulas GROUP BY y HAVING después de la cláusula WHERE. Si se especifican ambas cláusulas (GROUP BY y HAVING), ellas pueden aparecer en cualquier
   orden.

Las funciones de grupo pueden aparecer en la lista de la cláusula SELECT y en la cláusula HAVING.
Cláusula HAVING
Relaciones de Tablas
Se utilizan las restricciones de clave especificadas sobre las tablas a relacionar, para mantener la consistencia entre filas de las tablas. Informalmente, una restricción de integridad referencial
   asevera que una fila en una tabla haciendo referencia a otra tabla debe referenciar a una fila existente en la tabla destino.
Una restricción de integridad referencial se establece a través de una clave foránea (explícita o implícita).
Relaciones de Tablas
Es necesario identificar columnas comunes que establezcan una relación entre las tablas.
En la cláusula WHERE, se define la relación entre las tablas que aparecen en la cláusula FROM utilizando operadores de comparación.  
El operador más común para relacionar tablas es el operador de igualdad (=). Se denomina unión de igualdad si se relacionan dos tablas utilizando el operador de igualdad.
Relaciones de Tablas
Además de especificar la condición de unión en la cláusula WHERE, es posible especificar
  otras condiciones para limitar las filas recuperadas. Tales uniones son denominadas
  uniones complejas.




• Si múltiples tablas poseen los mismos nombres de columna, los nombres de
   columna duplicados deben ser cualificados en la consulta con el nombre de
   tabla.
Relaciones de Tablas
Si se utiliza cualquier otro operador para relacionar las tablas en la consulta, la misma es denominada unión de no igualdad.
Relaciones de Tablas
Una unión interna retorna sólo las filas coincidentes de ambas tablas. Existe un mecanismo denominado unión externa que retorna resultados basados en las filas no coincidentes de una o ambas tablas.
Escriba (+) al lado del nombre de columna de la tabla donde puede no existir una fila correspondiente. El operador de unión externa (+) puede aparecer únicamente en la cláusula WHERE de una sentencia SELECT.
Relaciones de Tablas
Una consulta de unión externa completa no puede escribirse en forma directa utilizando el operador de unión externa (+) . Una forma de escribir
  una consulta de unión externa completa en sintaxis Oracle es a través del operador UNION.
Relaciones de Tablas
Una sentencia SELECT puede estar incluida en una cláusula de otra sentencia SQL. Lo llamamos sub-consulta.

La sub-consulta debe aparecer a la derecha del operador de comparación. Y debe estar encerrada entre paréntesis.

Las sub-consultas no pueden contener una cláusula ORDER BY Se puede tener una sola cláusula ORDER BY para una sentencia SELECT, y específicamente debe ser la última cláusula en la sentencia SELECT principal.
                                                          .
Relaciones de Tablas
Una sub-consulta de filas simples devuelve una sola fila desde la sentencia SELECT anidada. Este tipo de
  sub-consulta utiliza un operador de fila simple.




• Las sub-consultas que devuelven más de una fila se denominan de filas
   múltiples. Se debe usar un operador de filas múltiples, tal como IN, en
   lugar de un operador de fila simple. Este operador espera uno o más
   valores.

Contenu connexe

Tendances

Funciones Logicas SI y Buscarv
Funciones Logicas SI y BuscarvFunciones Logicas SI y Buscarv
Funciones Logicas SI y BuscarvNahomi Erazo
 
Funciones de excel
Funciones de excelFunciones de excel
Funciones de excelyorkyr01
 
Manual de excel en las funciones lógicas si y la función buscarv
Manual de excel en las funciones lógicas si y la función buscarvManual de excel en las funciones lógicas si y la función buscarv
Manual de excel en las funciones lógicas si y la función buscarvUTPL
 
Manual de excel en las funciones lógicas si y la función buscarv
Manual de excel en las funciones lógicas si y la función buscarvManual de excel en las funciones lógicas si y la función buscarv
Manual de excel en las funciones lógicas si y la función buscarvMaryla Reyes Moreno
 
Funcion lógica si y buscarv.
Funcion lógica si y buscarv.Funcion lógica si y buscarv.
Funcion lógica si y buscarv.Lesli Cagua
 
Función buscar v y buscar si
Función buscar v y buscar si Función buscar v y buscar si
Función buscar v y buscar si guadalupemaritza
 
Función BUSCARV y CONTAR.SI en Excel
Función BUSCARV y CONTAR.SI en ExcelFunción BUSCARV y CONTAR.SI en Excel
Función BUSCARV y CONTAR.SI en Exceledissonroa
 
Tecnologiainformacionexcel
TecnologiainformacionexcelTecnologiainformacionexcel
Tecnologiainformacionexcelefitecnologia
 
Funciones de busqueda (Excel)
Funciones de busqueda (Excel)Funciones de busqueda (Excel)
Funciones de busqueda (Excel)cesiarequeno
 
La función si
La función siLa función si
La función sirosenia94
 
Manual de excel
Manual de excelManual de excel
Manual de excelUTPL
 

Tendances (19)

Unidad 15
Unidad 15Unidad 15
Unidad 15
 
Manual de excel
Manual de excel Manual de excel
Manual de excel
 
Curso SQL - Leccion 3
Curso SQL - Leccion 3  Curso SQL - Leccion 3
Curso SQL - Leccion 3
 
Funciones Logicas SI y Buscarv
Funciones Logicas SI y BuscarvFunciones Logicas SI y Buscarv
Funciones Logicas SI y Buscarv
 
Funciones de excel
Funciones de excelFunciones de excel
Funciones de excel
 
Manual de excel en las funciones lógicas si y la función buscarv
Manual de excel en las funciones lógicas si y la función buscarvManual de excel en las funciones lógicas si y la función buscarv
Manual de excel en las funciones lógicas si y la función buscarv
 
Manual de excel en las funciones lógicas si y la función buscarv
Manual de excel en las funciones lógicas si y la función buscarvManual de excel en las funciones lógicas si y la función buscarv
Manual de excel en las funciones lógicas si y la función buscarv
 
Funcion lógica si y buscarv.
Funcion lógica si y buscarv.Funcion lógica si y buscarv.
Funcion lógica si y buscarv.
 
Fundamentos sql
Fundamentos sqlFundamentos sql
Fundamentos sql
 
Alter Table
Alter TableAlter Table
Alter Table
 
Función buscar v y buscar si
Función buscar v y buscar si Función buscar v y buscar si
Función buscar v y buscar si
 
Función BUSCARV y CONTAR.SI en Excel
Función BUSCARV y CONTAR.SI en ExcelFunción BUSCARV y CONTAR.SI en Excel
Función BUSCARV y CONTAR.SI en Excel
 
Tecnologiainformacionexcel
TecnologiainformacionexcelTecnologiainformacionexcel
Tecnologiainformacionexcel
 
Funciones de busqueda (Excel)
Funciones de busqueda (Excel)Funciones de busqueda (Excel)
Funciones de busqueda (Excel)
 
Manual de funciones de excel (Función SI y BuscarV)
Manual de funciones de excel (Función SI y BuscarV)Manual de funciones de excel (Función SI y BuscarV)
Manual de funciones de excel (Función SI y BuscarV)
 
La función si
La función siLa función si
La función si
 
Manual de funciones
Manual de funcionesManual de funciones
Manual de funciones
 
Manual de excel
Manual de excelManual de excel
Manual de excel
 
Manual de excel
Manual de excelManual de excel
Manual de excel
 

En vedette

Servicios en red
Servicios en redServicios en red
Servicios en redI LG
 
Modulo hlc
Modulo hlcModulo hlc
Modulo hlcI LG
 
Presentación orientacion momae y aplof 1
Presentación orientacion momae y aplof 1Presentación orientacion momae y aplof 1
Presentación orientacion momae y aplof 1I LG
 
Modulo apw
Modulo apwModulo apw
Modulo apwI LG
 
Sistemas operativos en red
Sistemas operativos en redSistemas operativos en red
Sistemas operativos en redI LG
 
Seguridad
SeguridadSeguridad
SeguridadI LG
 
Sistemas operativos monopuesto
Sistemas operativos monopuestoSistemas operativos monopuesto
Sistemas operativos monopuestoI LG
 

En vedette (7)

Servicios en red
Servicios en redServicios en red
Servicios en red
 
Modulo hlc
Modulo hlcModulo hlc
Modulo hlc
 
Presentación orientacion momae y aplof 1
Presentación orientacion momae y aplof 1Presentación orientacion momae y aplof 1
Presentación orientacion momae y aplof 1
 
Modulo apw
Modulo apwModulo apw
Modulo apw
 
Sistemas operativos en red
Sistemas operativos en redSistemas operativos en red
Sistemas operativos en red
 
Seguridad
SeguridadSeguridad
Seguridad
 
Sistemas operativos monopuesto
Sistemas operativos monopuestoSistemas operativos monopuesto
Sistemas operativos monopuesto
 

Similaire à Capitulo3 sql consultas (20)

MANEJO DE SENTENCIAS DE RECUPERACIÓN
MANEJO DE SENTENCIAS DE RECUPERACIÓNMANEJO DE SENTENCIAS DE RECUPERACIÓN
MANEJO DE SENTENCIAS DE RECUPERACIÓN
 
MANEJO DE SENTENCIAS DE RECUPERACIÓN
MANEJO DE SENTENCIAS DE RECUPERACIÓNMANEJO DE SENTENCIAS DE RECUPERACIÓN
MANEJO DE SENTENCIAS DE RECUPERACIÓN
 
Introducción a sql server
Introducción a sql serverIntroducción a sql server
Introducción a sql server
 
Presentación
PresentaciónPresentación
Presentación
 
14 structure query language
14 structure query language14 structure query language
14 structure query language
 
Seleccion de datos 2
Seleccion de datos 2Seleccion de datos 2
Seleccion de datos 2
 
Sub consultas
Sub consultasSub consultas
Sub consultas
 
WebSQl DataBase HTML5-dql - data query language
WebSQl DataBase HTML5-dql - data query languageWebSQl DataBase HTML5-dql - data query language
WebSQl DataBase HTML5-dql - data query language
 
Subconsultas sql
Subconsultas sqlSubconsultas sql
Subconsultas sql
 
Sql
SqlSql
Sql
 
Consultas multitabla clase
Consultas multitabla claseConsultas multitabla clase
Consultas multitabla clase
 
Anon manual sql
Anon   manual sqlAnon   manual sql
Anon manual sql
 
Plop
PlopPlop
Plop
 
Sub consultas
Sub consultasSub consultas
Sub consultas
 
Sentencia select
Sentencia selectSentencia select
Sentencia select
 
Sql subconsultas
Sql subconsultasSql subconsultas
Sql subconsultas
 
Sql subconsultas
Sql subconsultasSql subconsultas
Sql subconsultas
 
Manipulacion de Bases de Datos
Manipulacion de Bases de DatosManipulacion de Bases de Datos
Manipulacion de Bases de Datos
 
Funciones de grupo
Funciones de grupoFunciones de grupo
Funciones de grupo
 
Grupo alfa 3
Grupo alfa 3Grupo alfa 3
Grupo alfa 3
 

Plus de I LG

Modulo reloc
Modulo relocModulo reloc
Modulo relocI LG
 
Ejemplos de php_mysql
Ejemplos de php_mysqlEjemplos de php_mysql
Ejemplos de php_mysqlI LG
 
Apuntes php mysql
Apuntes php mysqlApuntes php mysql
Apuntes php mysqlI LG
 
Capitulo5 sql manejo-bd
Capitulo5 sql manejo-bdCapitulo5 sql manejo-bd
Capitulo5 sql manejo-bdI LG
 
Capitulo4 sql definicion-bd
Capitulo4 sql definicion-bdCapitulo4 sql definicion-bd
Capitulo4 sql definicion-bdI LG
 
Capitulo4 sql definicion-bd
Capitulo4 sql definicion-bdCapitulo4 sql definicion-bd
Capitulo4 sql definicion-bdI LG
 
Capitulo2 sql bd-relacionales
Capitulo2 sql bd-relacionalesCapitulo2 sql bd-relacionales
Capitulo2 sql bd-relacionalesI LG
 
Capitulo1 sql (conceptos-basicos)
Capitulo1 sql (conceptos-basicos)Capitulo1 sql (conceptos-basicos)
Capitulo1 sql (conceptos-basicos)I LG
 
Ud5 reloc-admin centralizadared
Ud5 reloc-admin centralizadaredUd5 reloc-admin centralizadared
Ud5 reloc-admin centralizadaredI LG
 
Ud5 reloc-mantenimiento sistema
Ud5 reloc-mantenimiento sistemaUd5 reloc-mantenimiento sistema
Ud5 reloc-mantenimiento sistemaI LG
 
Curso joomla
Curso joomlaCurso joomla
Curso joomlaI LG
 

Plus de I LG (11)

Modulo reloc
Modulo relocModulo reloc
Modulo reloc
 
Ejemplos de php_mysql
Ejemplos de php_mysqlEjemplos de php_mysql
Ejemplos de php_mysql
 
Apuntes php mysql
Apuntes php mysqlApuntes php mysql
Apuntes php mysql
 
Capitulo5 sql manejo-bd
Capitulo5 sql manejo-bdCapitulo5 sql manejo-bd
Capitulo5 sql manejo-bd
 
Capitulo4 sql definicion-bd
Capitulo4 sql definicion-bdCapitulo4 sql definicion-bd
Capitulo4 sql definicion-bd
 
Capitulo4 sql definicion-bd
Capitulo4 sql definicion-bdCapitulo4 sql definicion-bd
Capitulo4 sql definicion-bd
 
Capitulo2 sql bd-relacionales
Capitulo2 sql bd-relacionalesCapitulo2 sql bd-relacionales
Capitulo2 sql bd-relacionales
 
Capitulo1 sql (conceptos-basicos)
Capitulo1 sql (conceptos-basicos)Capitulo1 sql (conceptos-basicos)
Capitulo1 sql (conceptos-basicos)
 
Ud5 reloc-admin centralizadared
Ud5 reloc-admin centralizadaredUd5 reloc-admin centralizadared
Ud5 reloc-admin centralizadared
 
Ud5 reloc-mantenimiento sistema
Ud5 reloc-mantenimiento sistemaUd5 reloc-mantenimiento sistema
Ud5 reloc-mantenimiento sistema
 
Curso joomla
Curso joomlaCurso joomla
Curso joomla
 

Capitulo3 sql consultas

  • 1. Recuperación de Datos Conceptos básicos http://www.dosideas.com Mayo de 2009 Dos Ideas - La visión de Sistemas desde el Desarrollo
  • 2. Cláusula WHERE Se pueden restringir las filas recuperadas usando la cláusula WHERE. Una cláusula WHERE contiene una condición lógica, la cual usa operadores de comparación. Las filas procesadas son aquellas en que los datos que contienen satisfacen la/s condición/es lógicas.
  • 4. Operadores de Comparación Like: No siempre se conoce el valor exacto a buscar. Se pueden seleccionar filas que coincidan con un patrón de caracteres usando el operador LIKE.
  • 5. Operadores de Comparación Is null, Is not null: testean valores nulos.
  • 7. Cláusula ORDER BY El orden de las filas recuperadas por el resultado de una consulta es indefinido. Server no puede buscar y traer las filas en el mismo orden para una consulta ejecutada dos veces. La cláusula ORDER BY puede ser utilizada para ordenar las filas. El orden por defecto es ascendente, entonces: • Los valores numéricos se muestran con el valor más bajo en primer lugar, por ejemplo 1 a 999. • Los valores de fecha se muestran con el valor más temprano en primer lugar, por ejemplo 01-01-1992 antes que 01-01-1995. • Los valores de caracteres se muestran en orden alfabético, por ejemplo primero la A y último la Z. • Los valores nulos se muestran últimos en las secuencias ascendentes y primeros en las secuencias descendentes.
  • 8. Funciones condicionales • NVL (expresión1, expresión2): evalúa la expresión expresión1, si la misma es nula entonces devuelve expresión2, sino devuelve expresión1. Esta función opera como un "traductor de valores nulos". • DECODE (expresión, valor1, código1, ..., valorN, códigoN, default): evalúa la expresión expresión, si la misma es igual a valor1, devuelve código1, si es igual a valor2, devuelve código2, y así sucesivamente hasta comparar expresión con valorN. Si no coincide con ninguna expresión representada por los parámetros "valor", entonces devuelve default.   • CASE: Las expresiones CASE pueden clasificarse en dos tipos generales: expresiones sencillas y expresiones de múltiples condiciones.
  • 9. Funciones de Grupo • Permiten obtener información agrupada que existe en una tabla, perdiendo de esta manera el detalle de cada fila en particular. • A excepción de la función COUNT(*), ignoran los valores nulos. Se puede usar la función NVL, en el argumento de la función de grupo, para sustituir un valor nulo por otro valor.
  • 11. Cláusula GROUP BY • Si se usa la cláusula GROUP BY en una sentencia SELECT, se dividen las filas de una tabla o vista consultada en grupos. Si se omite la cláusula GROUP BY, se aplican las funciones de grupo en la lista SELECT a todas las filas en la tabla o vista consultada.
  • 12. Cláusula HAVING Se usa para restringir cuáles grupos de filas, definidas por la cláusula GROUP BY, son retornadas por la consulta. Se procesan las cláusulas WHERE, GROUP BY y HAVING de la siguiente manera: 1.Si la sentencia contiene una cláusula WHERE, se remueven todas las filas que no la satisfacen. 2.Se calcula y da formato a los grupos como se especifica en la cláusula GROUP BY. 3.Server remueve todos los grupos que no satisfacen la cláusula HAVING. Se deben especificar las cláusulas GROUP BY y HAVING después de la cláusula WHERE. Si se especifican ambas cláusulas (GROUP BY y HAVING), ellas pueden aparecer en cualquier orden. Las funciones de grupo pueden aparecer en la lista de la cláusula SELECT y en la cláusula HAVING.
  • 14. Relaciones de Tablas Se utilizan las restricciones de clave especificadas sobre las tablas a relacionar, para mantener la consistencia entre filas de las tablas. Informalmente, una restricción de integridad referencial asevera que una fila en una tabla haciendo referencia a otra tabla debe referenciar a una fila existente en la tabla destino. Una restricción de integridad referencial se establece a través de una clave foránea (explícita o implícita).
  • 15. Relaciones de Tablas Es necesario identificar columnas comunes que establezcan una relación entre las tablas. En la cláusula WHERE, se define la relación entre las tablas que aparecen en la cláusula FROM utilizando operadores de comparación.   El operador más común para relacionar tablas es el operador de igualdad (=). Se denomina unión de igualdad si se relacionan dos tablas utilizando el operador de igualdad.
  • 16. Relaciones de Tablas Además de especificar la condición de unión en la cláusula WHERE, es posible especificar otras condiciones para limitar las filas recuperadas. Tales uniones son denominadas uniones complejas. • Si múltiples tablas poseen los mismos nombres de columna, los nombres de columna duplicados deben ser cualificados en la consulta con el nombre de tabla.
  • 17. Relaciones de Tablas Si se utiliza cualquier otro operador para relacionar las tablas en la consulta, la misma es denominada unión de no igualdad.
  • 18. Relaciones de Tablas Una unión interna retorna sólo las filas coincidentes de ambas tablas. Existe un mecanismo denominado unión externa que retorna resultados basados en las filas no coincidentes de una o ambas tablas. Escriba (+) al lado del nombre de columna de la tabla donde puede no existir una fila correspondiente. El operador de unión externa (+) puede aparecer únicamente en la cláusula WHERE de una sentencia SELECT.
  • 19. Relaciones de Tablas Una consulta de unión externa completa no puede escribirse en forma directa utilizando el operador de unión externa (+) . Una forma de escribir una consulta de unión externa completa en sintaxis Oracle es a través del operador UNION.
  • 20. Relaciones de Tablas Una sentencia SELECT puede estar incluida en una cláusula de otra sentencia SQL. Lo llamamos sub-consulta. La sub-consulta debe aparecer a la derecha del operador de comparación. Y debe estar encerrada entre paréntesis. Las sub-consultas no pueden contener una cláusula ORDER BY Se puede tener una sola cláusula ORDER BY para una sentencia SELECT, y específicamente debe ser la última cláusula en la sentencia SELECT principal. .
  • 21. Relaciones de Tablas Una sub-consulta de filas simples devuelve una sola fila desde la sentencia SELECT anidada. Este tipo de sub-consulta utiliza un operador de fila simple. • Las sub-consultas que devuelven más de una fila se denominan de filas múltiples. Se debe usar un operador de filas múltiples, tal como IN, en lugar de un operador de fila simple. Este operador espera uno o más valores.