SlideShare una empresa de Scribd logo
Claudio Angulo S.

ADMI273-ADMI274
¿Qué es SQL?
• Lenguaje de consulta estructurado
  (SQL: Structured Query Languague) .
• Es un lenguaje de base de datos
  normalizado.
• Utilizado para consultar, modificar o
  eliminar datos en una Base de Datos.
Componentes
•   Comandos
•   Claúsulas
•   Operadores
•   Funciones
Comandos
• Existen 2 tipos:
  – DLL (definición de datos): Permiten crear y definir nuevas
    bases de datos, campos e índices.
     • CREATE
     • DROP
     • ALTER
  – DML (manipulación de datos): Permiten generar consultas
    para ordenar, filtrar y extraer datos.
     • SELECT
     • INSERT
     • UPDATE
     • DELETE
Cláusulas
•   FROM
•   WHERE
•   GROUP BY
•   HAVING
•   ORDER BY
Operadores
• Lógicos:
  – AND
  – OR
  – NOT
• Comparación: <, >, <>, <=, >=
Funciones
•   COUNT
•   SUM
•   MAX
•   MIN
•   AVG
Consulta básica
SELECT A
FROM B

Donde A son los datos que
 requiero (columnas) y B es de
 donde obtengo esos datos.
Ejemplo
SELECT nombre, apellidos, edad
FROM estudiantes
WHERE
• A veces NO se necesitan obtener datos tan
  generales, y es cuando se aplican filtros, con la
  clausula WHERE.

           SELECT A
           FROM B
           WHERE C

Donde C, es una o más condiciones.
Ejemplo
SELECT nombres, apellidos, edad
FROM estudiantes
WHERE edad > 21
Alias
• Los alias son un nombre de
  asignación que se le dan a los
  recursos, en este caso las tablas.
• Luego se pueden llamar a sus
  atributos     desde      ese      alias,
  continuados con un punto (“.”) .
Ejemplo
SELECT c.nombres, f.nombres
FROM campus c, funcionarios f
WHERE c.id_campus = f.id_campus
Alias 2
• Es posible dar un alias (nombre) al titulo
  de las columnas de una tabla, que no es
  el mismo que posee en la Base de Datos.
• Ejemplo sin Alias:
    Select l.titulo, l.agno
    From libros l

        TITULO                      AGNO
        Matemáticas                 2007
        Lenguaje y Comunicaciones   1998
        Cs. Biológicas              2003
Ejemplo con Alias
Select l.titulo, l.agno As AÑO
From libros l

     TITULO                      AÑO
     Matemáticas                 2007
     Lenguaje y Comunicaciones   1998
     Cs. Biológicas              2003
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.
 Ejemplo:

 SELECT nombre_columna1, nombre_columna2
 FROM nombre_tabla
 GROUP BY nombre_columna1
GROUP BY: Ejemplo
    tienda_info
     nombre_tienda   ventas     fecha
        Valdivia     1500     05-jan-2010
        Temuco        250     07-jan-2010
        Valdivia      300     08-jan-2010
        Osorno        700     08-jan-2010




                                            RESULTADO
CONSULTA                                    Valdivia
SELECT nombre_tienda, SUM(ventas)           1800
FROM tienda_info                            Temuco
GROUP BY nombre_tienda                      250
                                            Osorno      700
HAVING
Especifica una condición de búsqueda para un
grupo o agregado. HAVING sólo 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.
   Ejemplo:

   SELECT nombre_columna1, SUM(nombre_columna2)
   FROM nombre_tabla
   [ GROUP BY nombre_columna1 ]
   HAVING (condición de función aritmética)
HAVING: Ejemplo
    tienda_info
     nombre_tienda   ventas     fecha
        Valdivia     1500     05-jan-2010
        Temuco        250     07-jan-2010
        Valdivia      300     08-jan-2010
        Osorno        700     08-jan-2010



CONSULTA                                    RESULTADO
SELECT nombre_tienda, SUM(ventas)           Valdivia
FROM tienda_info                                    1800
GROUP BY nombre_tienda
HAVING SUM(ventas) > 1500
ORDER BY
Especifica el orden utilizado en las columnas
devueltas en una instrucción SELECT. La
cláusula ORDER BY no es válida en vistas,
funciones insertadas, tablas derivadas ni
subconsultas.
  Ejemplo:

  SELECT nombre_columna1, nombre_columna2
  FROM nombre_tabla
  [ WHERE condicion]
  ORDER BY nombre_columna1 [ASC, DESC]
ORDER BY: Ejemplo
        tienda_info
        nombre_tienda    ventas       fecha
            Valdivia     1500     05-jan-2010
            Temuco        250     07-jan-2010
            Valdivia      300     08-jan-2010
            Osorno        700     08-jan-2010



                                       RESULTADO
CONSULTA                               Valdivia          1500   05-
SELECT nombre_tienda, ventas, fecha    jan-2010
FROM tienda_info                       Osorno      700   08-jan-2010
ORDER BY ventas DESC                   Valdivia          300     08-
                                       jan-2010
                                       Temuco            250    07-
OPERADORES LOGICOS
                      (AND-OR)
                             C1      C2   C1 OR C2
                                 V   V       V
                                 V   F       V
C1   C2   C1 AND C2
                                 F   V       V
V    V       V
V    F        F                  F   F       F

F    V        F
F    F        F
OPERADORES LOGICOS:
          Ejemplo AND
tienda_info
 nombre_tienda   ventas      fecha
    Valdivia      1500    05-jan-2010
    Temuco        250     07-jan-2010
    Valdivia      300     08-jan-2010
    Osorno        700     08-jan-2010

CONSULTA
SELECT *                             RESULTADO
FROM tienda_info                     Valdivia    1500   05-
WHERE ventas > 500                   jan-2010
AND nombre_tienda = ‘Valdivia’
OPERADORES LOGICOS:
          Ejemplo OR
tienda_info
 nombre_tienda    ventas        fecha
    Valdivia      1500     05-jan-2010
    Temuco         250     07-jan-2010
    Valdivia       300     08-jan-2010
    Osorno         700     08-jan-2010

CONSULTA
SELECT *                                RESULTADO
FROM tienda_info                        Valdivia          1500   05-
WHERE ventas > 500                      jan-2010
OR nombre_tienda = ‘Valdivia’           Valdivia          300    08-
                                        jan-2010
                                        Osorno      700   08-jan-2010
Modelo de Datos
Para este laboratorio usaremos la Base de
Datos Biblioteca desarrollado en la clase
anterior.

Para ello use la imagen que se encuentra en
siveduc, “Biblioteca.png” y cargue el archivo
“Biblioteca.sql” en PLSQL como se enseño en la
clase anterior.
Lab5. SQL

Más contenido relacionado

PPTX
PDF
Direccionamiento - Ejercicios - Explicacion - Clases A-B-C
PDF
Guia practica secuenciales en java con NetBeans 01
PDF
Puertos de comunicacion
PDF
Servlets que manejan datos de formularios HTML
PDF
EJERCICIOS DE RECURSIVIDAD EN HASKELL
PPTX
proyecto java
PPTX
Programación 3: listas enlazadas
Direccionamiento - Ejercicios - Explicacion - Clases A-B-C
Guia practica secuenciales en java con NetBeans 01
Puertos de comunicacion
Servlets que manejan datos de formularios HTML
EJERCICIOS DE RECURSIVIDAD EN HASKELL
proyecto java
Programación 3: listas enlazadas

La actualidad más candente (20)

PPTX
Tipos de listas en estructura de datos
PPTX
Insertar elementos en una cola
PDF
Todos+los+comandos+que+hay+que+saber+para+configurar+un+router
DOCX
Guía de ejercicios de normalizacion
PPTX
Algoritmos intercalación
DOCX
152289363 consultas-en-prolog
PPTX
Ejemplo Proyecto utilizando Uml
DOCX
Redes Inalambricas Wlan
PPTX
Modelo Entidad - Relacion
PPTX
Listas enlazadas
DOCX
Mapa mental de base de datos
PDF
Base de datos modelo entidad relacion
PPTX
Encapsulamiento en JAVA-NETBEANS
PPTX
PPTX
DIRECCIONES Y CLASES IP
PDF
13 Curso de POO en java - métodos propios de clase
PPTX
Pruebas de autocorrelacion yule
PDF
Consultas vuelta ciclista (soluciones)
DOC
Ud6 hoja5 correccion
Tipos de listas en estructura de datos
Insertar elementos en una cola
Todos+los+comandos+que+hay+que+saber+para+configurar+un+router
Guía de ejercicios de normalizacion
Algoritmos intercalación
152289363 consultas-en-prolog
Ejemplo Proyecto utilizando Uml
Redes Inalambricas Wlan
Modelo Entidad - Relacion
Listas enlazadas
Mapa mental de base de datos
Base de datos modelo entidad relacion
Encapsulamiento en JAVA-NETBEANS
DIRECCIONES Y CLASES IP
13 Curso de POO en java - métodos propios de clase
Pruebas de autocorrelacion yule
Consultas vuelta ciclista (soluciones)
Ud6 hoja5 correccion
Publicidad

Destacado (9)

PDF
Inglês para Profissionais de Saúde
PPT
Onyx Multi Services Centerslide
PPT
Konsultantų rengimo, konsultavimo modelio kūrimo ir įgyvendinimo veiklų prist...
PPTX
I have finished media buzzing
PDF
Politicas Social Media por la Universidad Anahuac en 5° Congreso PRORP 2012
PPTX
新生命資訊服務股份有限公司
KEY
Johnny's Boy of the Painted Cave Timeline v2
PPTX
Una Experiència MOOC a la UdG
PDF
Sécurité de l’information: L’importance du réveil des organisations.
Inglês para Profissionais de Saúde
Onyx Multi Services Centerslide
Konsultantų rengimo, konsultavimo modelio kūrimo ir įgyvendinimo veiklų prist...
I have finished media buzzing
Politicas Social Media por la Universidad Anahuac en 5° Congreso PRORP 2012
新生命資訊服務股份有限公司
Johnny's Boy of the Painted Cave Timeline v2
Una Experiència MOOC a la UdG
Sécurité de l’information: L’importance du réveil des organisations.
Publicidad

Similar a Lab5. SQL (20)

PPT
PPTX
PPT
Consultas en SQL
PPTX
diapositiva-clase-unidad-4-sql.pptx
PPTX
diapositiva-clase-unidad-4-sql.pptx
DOC
Sql comamdo
DOCX
SENTENCIAS DE SQL SERVER
PPTX
Fundamentos de BD - Unidad 6 lenguaje sql
PPTX
PPT
Ti. Sql.Caso1al9.Consultas
PPTX
Consultas sql 2014
PPTX
Consultas sql 2014
DOC
Sql avanzado
PPTX
70461 Sesion2 Uso del SELECT, DISTINCT, CASE
DOCX
PPTX
SENTENCIAS SQL
PDF
Guia de ejercicio sql
PPTX
Consultas SQL
PPTX
Consulta sql alexandra mayorga
DOC
Proyecto De Aplicacion A La Bases Datos
Consultas en SQL
diapositiva-clase-unidad-4-sql.pptx
diapositiva-clase-unidad-4-sql.pptx
Sql comamdo
SENTENCIAS DE SQL SERVER
Fundamentos de BD - Unidad 6 lenguaje sql
Ti. Sql.Caso1al9.Consultas
Consultas sql 2014
Consultas sql 2014
Sql avanzado
70461 Sesion2 Uso del SELECT, DISTINCT, CASE
SENTENCIAS SQL
Guia de ejercicio sql
Consultas SQL
Consulta sql alexandra mayorga
Proyecto De Aplicacion A La Bases Datos

Lab5. SQL

  • 2. ¿Qué es SQL? • Lenguaje de consulta estructurado (SQL: Structured Query Languague) . • Es un lenguaje de base de datos normalizado. • Utilizado para consultar, modificar o eliminar datos en una Base de Datos.
  • 3. Componentes • Comandos • Claúsulas • Operadores • Funciones
  • 4. Comandos • Existen 2 tipos: – DLL (definición de datos): Permiten crear y definir nuevas bases de datos, campos e índices. • CREATE • DROP • ALTER – DML (manipulación de datos): Permiten generar consultas para ordenar, filtrar y extraer datos. • SELECT • INSERT • UPDATE • DELETE
  • 5. Cláusulas • FROM • WHERE • GROUP BY • HAVING • ORDER BY
  • 6. Operadores • Lógicos: – AND – OR – NOT • Comparación: <, >, <>, <=, >=
  • 7. Funciones • COUNT • SUM • MAX • MIN • AVG
  • 8. Consulta básica SELECT A FROM B Donde A son los datos que requiero (columnas) y B es de donde obtengo esos datos.
  • 9. Ejemplo SELECT nombre, apellidos, edad FROM estudiantes
  • 10. WHERE • A veces NO se necesitan obtener datos tan generales, y es cuando se aplican filtros, con la clausula WHERE. SELECT A FROM B WHERE C Donde C, es una o más condiciones.
  • 11. Ejemplo SELECT nombres, apellidos, edad FROM estudiantes WHERE edad > 21
  • 12. Alias • Los alias son un nombre de asignación que se le dan a los recursos, en este caso las tablas. • Luego se pueden llamar a sus atributos desde ese alias, continuados con un punto (“.”) .
  • 13. Ejemplo SELECT c.nombres, f.nombres FROM campus c, funcionarios f WHERE c.id_campus = f.id_campus
  • 14. Alias 2 • Es posible dar un alias (nombre) al titulo de las columnas de una tabla, que no es el mismo que posee en la Base de Datos. • Ejemplo sin Alias: Select l.titulo, l.agno From libros l TITULO AGNO Matemáticas 2007 Lenguaje y Comunicaciones 1998 Cs. Biológicas 2003
  • 15. Ejemplo con Alias Select l.titulo, l.agno As AÑO From libros l TITULO AÑO Matemáticas 2007 Lenguaje y Comunicaciones 1998 Cs. Biológicas 2003
  • 16. 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. Ejemplo: SELECT nombre_columna1, nombre_columna2 FROM nombre_tabla GROUP BY nombre_columna1
  • 17. GROUP BY: Ejemplo tienda_info nombre_tienda ventas fecha Valdivia 1500 05-jan-2010 Temuco 250 07-jan-2010 Valdivia 300 08-jan-2010 Osorno 700 08-jan-2010 RESULTADO CONSULTA Valdivia SELECT nombre_tienda, SUM(ventas) 1800 FROM tienda_info Temuco GROUP BY nombre_tienda 250 Osorno 700
  • 18. HAVING Especifica una condición de búsqueda para un grupo o agregado. HAVING sólo 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. Ejemplo: SELECT nombre_columna1, SUM(nombre_columna2) FROM nombre_tabla [ GROUP BY nombre_columna1 ] HAVING (condición de función aritmética)
  • 19. HAVING: Ejemplo tienda_info nombre_tienda ventas fecha Valdivia 1500 05-jan-2010 Temuco 250 07-jan-2010 Valdivia 300 08-jan-2010 Osorno 700 08-jan-2010 CONSULTA RESULTADO SELECT nombre_tienda, SUM(ventas) Valdivia FROM tienda_info 1800 GROUP BY nombre_tienda HAVING SUM(ventas) > 1500
  • 20. ORDER BY Especifica el orden utilizado en las columnas devueltas en una instrucción SELECT. La cláusula ORDER BY no es válida en vistas, funciones insertadas, tablas derivadas ni subconsultas. Ejemplo: SELECT nombre_columna1, nombre_columna2 FROM nombre_tabla [ WHERE condicion] ORDER BY nombre_columna1 [ASC, DESC]
  • 21. ORDER BY: Ejemplo tienda_info nombre_tienda ventas fecha Valdivia 1500 05-jan-2010 Temuco 250 07-jan-2010 Valdivia 300 08-jan-2010 Osorno 700 08-jan-2010 RESULTADO CONSULTA Valdivia 1500 05- SELECT nombre_tienda, ventas, fecha jan-2010 FROM tienda_info Osorno 700 08-jan-2010 ORDER BY ventas DESC Valdivia 300 08- jan-2010 Temuco 250 07-
  • 22. OPERADORES LOGICOS (AND-OR) C1 C2 C1 OR C2 V V V V F V C1 C2 C1 AND C2 F V V V V V V F F F F F F V F F F F
  • 23. OPERADORES LOGICOS: Ejemplo AND tienda_info nombre_tienda ventas fecha Valdivia 1500 05-jan-2010 Temuco 250 07-jan-2010 Valdivia 300 08-jan-2010 Osorno 700 08-jan-2010 CONSULTA SELECT * RESULTADO FROM tienda_info Valdivia 1500 05- WHERE ventas > 500 jan-2010 AND nombre_tienda = ‘Valdivia’
  • 24. OPERADORES LOGICOS: Ejemplo OR tienda_info nombre_tienda ventas fecha Valdivia 1500 05-jan-2010 Temuco 250 07-jan-2010 Valdivia 300 08-jan-2010 Osorno 700 08-jan-2010 CONSULTA SELECT * RESULTADO FROM tienda_info Valdivia 1500 05- WHERE ventas > 500 jan-2010 OR nombre_tienda = ‘Valdivia’ Valdivia 300 08- jan-2010 Osorno 700 08-jan-2010
  • 25. Modelo de Datos Para este laboratorio usaremos la Base de Datos Biblioteca desarrollado en la clase anterior. Para ello use la imagen que se encuentra en siveduc, “Biblioteca.png” y cargue el archivo “Biblioteca.sql” en PLSQL como se enseño en la clase anterior.