SlideShare una empresa de Scribd logo
1 de 14
UNIVERSIDAD REGIONAL
AUTONOMA DE LOS ANDES
CONSULTAS SQL
HECTOR NARANJO
7mo SISTEMAS
Elaborar una presentación que describa las siguientes
temáticas:
 Escribir sentencias SQL SELECT para consultas con
operadores de restricción, proyección y enlace.
 Escribir sentencias SELECT para enlaces que incluyen
tres o más tablas, autoenlaces y múltiples enlaces
entre tablas.
 Entender y ejemplificar el propósito de la cláusula
GROUP BY usando el proceso de evaluación
conceptual.
 Escribir descripciones en español en sentencias
documentadas de SQL.
 Escribir las sentencias INSERT, UPDATE y DELETE para
modificar las filas de una tabla.
Escribir sentencias SQL SELECT para consultas con operadores de
restricción, proyección y enlace.
La sentencia SELECT, permite recuperar datos de una o varias tablas, forma parte del
DML (lenguaje de manipulación de datos).
SINTAXIS
Con la cláusula FROM indicamos en qué tabla tiene que buscar la información,
el resultado se obtiene de una única tabla. La sintaxis de la cláusula es:
FROM especificación de tabla
En la cláusula IN el nombre de la base de datos debe incluir el camino completo,
la extensión (.mdb), y estar entre comillas simples.
Supongamos que la tabla empleados estuviese en otra base de datos
llamada otra en la carpeta c:mis documentos, habría que indicarlo así:
SELECT *
FROM empleados IN 'c:mis documentosotra.mdb'
Se utiliza el asterisco * en la lista de selección para indicar 'todas las columnas
de la tabla'.
SELECT * FROM oficinas Lista todos los datos de las oficinas
La clausula FROM
La cláusula WHERE
La cláusula WHERE selecciona unicamente las filas que cumplan la condición de
selección especificada.
En la consulta sólo aparecerán las filas para las cuales la condición es verdadera
(TRUE), los valores nulos (NULL) no se incluyen por lo tanto en las filas del resultado.
La condición de selección puede ser cualquier condición válida o combinación de
condiciones utilizando los operadores NOT (no) AND (y) y OR (ó). En ACCESS2000 una
cláusula WHERE puede contener hasta 40 expresiones vinculadas por operadores
lógicos AND y OR. Si quieres ver cómo funcionan los operadores lógicos
ejemplo :
SELECT nombre
FROM empleados
WHERE oficina = 12
Lista el nombre de los empleados de la
oficina 12.
La cláusula WHERE
Escribir sentencias SELECT para enlaces que incluyen tres o más
tablas, autoenlaces y múltiples enlaces entre tablas.
Al estudiar las consultas multitabla llamadas así porque están basadas en más de una
tabla.
El SQL de Microsoft Jet 4.x soporta dos grupos de consultas multitabla:
- la unión de tablas
- la composición de tablas
El operador que permite realizar esta operación es el operador UNION.
La composición de tablas consiste en concatenar filas de una tabla con filas de
otra. En este caso obtenemos una tabla con las columnas de la primera
tabla unidas a las columnas de la segunda tabla, y las filas de la tabla
resultante son concatenaciones de filas de la primera tabla con filas de
la segunda tabla.
Ejemplo:
 El producto cartesiano es un tipo de composición de tablas, aplicando el
producto cartesiano a dos tablas se obtiene una tabla con las columnas de
la primera tabla unidas a las columnas de la segunda tabla, y las filas de la
tabla resultante son todas las posibles concatenaciones de filas de
la primera tabla con filas de la segunda tabla.
La sintaxis es la siguiente:
 El producto cartesiano se indica poniendo en la FROM las tablas que
queremos componer separadas por comas, podemos obtener así el producto
cartesiano de dos, tres, o más tablas.
Se pueden combinar más de dos tablas
En este caso hay que sustituir en la sintaxis una tabla por un INNER JOIN
completo.
Por ejemplo:
 SELECT *
FROM (pedidos INNER JOIN clientes ON pedidos.clie = clientes.numclie)
INNER JOIN empleados ON pedidos.rep = empleados.numemp
 El INNER JOIN es otro tipo de composición de tablas, permite emparejar
filas de distintas tablas de forma más eficiente que con el producto
cartesiano cuando una de las columnas de emparejamiento está indexada.
Ya que en vez de hacer el producto cartesiano completo y luego seleccionar la
filas que cumplen la condición de emparejamiento, para cada fila de una de
las tablas busca directamente en la otra tabla las filas que cumplen la
condición, con lo cual se emparejan sólo las filas que luego aparecen en el
resultado.
La sintaxis es la siguiente:
Ejemplo:
SELECT *
FROM pedidos INNER JOIN clientes ON pedidos.clie = clientes.numclie
SELECT nombre, oficina, contrato
FROMempleados
ORDER BY oficina
es equivalente a
SELECT nombre, oficina, contrato
FROM empleados
ORDER BY 2
Ordenación de las filas - ORDER BY -
Para ordenar las filas del resultado de la consulta, tenemos la cláusula ORDER BY.
Con esta cláusula se altera el orden de visualización de las filas de la tabla pero en ningún
caso se modifica el orden de las filas dentro de la tabla. La tabla no se modifica.
Podemos indicar la columna por la que queremos ordenar utilizando su nombre de
columna (nbcolumna) o utilizando su número de orden que ocupa en la lista de selección
(Nºcolumna).
Ejemplo:
La cláusula GROUP BY
Se pueden obtener subtotales con la cláusula GROUP BY. Una consulta con una
cláusula GROUP BY se denomina consulta agrupada ya que agrupa los datos de la
tabla origen yproduce una única fila resumen por cada grupo formado. Las
columnas indicadas en el GROUP BY se llaman columnas de agrupación.
Ejemplo:
SELECT SUM(ventas)
FROM repventas
Obtiene la suma de las ventas de todos los empleados.
SELECT SUM(ventas)
FROM repventas
GROUP BY oficina
Se forma un grupo para cada oficina, con las filas de la
oficina, y la suma se calcula sobre las filas de cada
grupo. El ejemplo anterior obtiene una lista con la suma
de las ventas de los empleados de cada oficina.
Entender y ejemplificar el propósito de la cláusula GROUP BY usando el proceso
de evaluación conceptual.
Escribir las sentencias INSERT, UPDATE y DELETE para
modificar las filas de una tabla.
 En este tema vamos a tratar el de la actualización de esos datos, es decir
insertar nuevas filas, borrar filas o cambiar el contenido de las filas de una
tabla. Estas operaciones modifican los datos almacenados en las tablas pero
no su estructura, ni su definición.
insertar una fila INSERT INTO...VALUES
La inserción de nuevos datos en una tabla se realiza añadiendo filas enteras a la
tabla, la sentencia SQL que lo permite es la orden INSERT INTO.
La inserción se puede realizar de una fila o de varias filas de golpe, veremos las
dos opciones por separado y empezaremos por la inserción de una fila.
La sintaxis es la siguiente:
INSERT INTO empleados VALUES (200, 'Juan López', 30, NULL, 'rep
ventas', #06/23/01#, NULL, 350000, 0)
Modificar el contenido de las filas ( UPDATE )
La sentencia UPDATE modifica los valores de una o más columnas en las filas
seleccionadas de una o varias tablas.
La sintaxis es la siguiente:
La cláusula SET especifica qué columnas van a modificarse y qué valores asignar a esas
columnas.
nbcolumna, es el nombre de la columna a la cual queremos asignar un nuevo valor por lo
tanto debe ser una columna de la tabla origen. El SQL estándar exige nombres sin cualificar pero
algunas implementaciones (como por ejemplo el SQL de Microsoft Jet que estamos estudiando) sí
lo permiten.
La expresión en cada asignación debe generar un valor del tipo de dato apropiado para la
columna indicada. La expresión debe ser calculable a partir de los valores de la fila que se
está actualizando. Expresión no puede ser una subconsulta.
Ejemplo:
UPDATE oficinas INNER JOIN empleados
ON oficinas.oficina = empleados.oficina
SET cuota=objetivo*0.01;
Borrar filas (DELETE)
La sentencia DELETE elimina filas de una tabla.
La sintaxis es la siguiente:
Ejemplo:
DELETE * FROM pedidos WHERE clie IN (SELECT numclie FROM clientes WHERE
nombre = 'Julian López');
O bien:
DELETE pedidos.* FROM pedidos INNER JOIN clientes ON pedidos.clie =
clientes.numclie WHERE nombre = 'Julian López';
Las dos sentencias borran los pedidos del cliente Julian López. En la segunda
estamos obligados a poner pedidos.* porque el origen está basado en varias
tablas.
DELETE * FROM pedidos; o DELETE FROM pedidos; Borra todas las filas de
pedidos.

Más contenido relacionado

La actualidad más candente (20)

Consulta sql alexandra mayorga
Consulta sql alexandra mayorgaConsulta sql alexandra mayorga
Consulta sql alexandra mayorga
 
Operaciones basicas de sql
Operaciones basicas de sqlOperaciones basicas de sql
Operaciones basicas de sql
 
Comandos SQL
Comandos SQLComandos SQL
Comandos SQL
 
Sql Sentencias
Sql Sentencias Sql Sentencias
Sql Sentencias
 
Lenguaje sql
Lenguaje sqlLenguaje sql
Lenguaje sql
 
Consultas básicas en sql server
Consultas básicas en sql serverConsultas básicas en sql server
Consultas básicas en sql server
 
Objeto De Aprendizaje
Objeto De AprendizajeObjeto De Aprendizaje
Objeto De Aprendizaje
 
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)
 
Consultas sql
Consultas sqlConsultas sql
Consultas sql
 
Consultas sql 2014
Consultas sql 2014Consultas sql 2014
Consultas sql 2014
 
Consultas en sql básico
Consultas en sql básicoConsultas en sql básico
Consultas en sql básico
 
Sentencias Sql
Sentencias SqlSentencias Sql
Sentencias Sql
 
Tutorial sql
Tutorial sqlTutorial sql
Tutorial sql
 
Unidad 6 Lenguaje Sql 2
Unidad 6 Lenguaje Sql 2Unidad 6 Lenguaje Sql 2
Unidad 6 Lenguaje Sql 2
 
Sentencia select
Sentencia selectSentencia select
Sentencia select
 
Sentencia select
Sentencia selectSentencia select
Sentencia select
 
Teoria sql
Teoria sqlTeoria sql
Teoria sql
 
SETENCIAS SQL
SETENCIAS SQLSETENCIAS SQL
SETENCIAS SQL
 
Sql Setencias
Sql SetenciasSql Setencias
Sql Setencias
 
14 structure query language
14 structure query language14 structure query language
14 structure query language
 

Similar a SQL SELECT, INSERT, UPDATE y DELETE

Similar a SQL SELECT, INSERT, UPDATE y DELETE (20)

Consultas sql 2014
Consultas sql 2014Consultas sql 2014
Consultas sql 2014
 
Consultas multitabla clase
Consultas multitabla claseConsultas multitabla clase
Consultas multitabla clase
 
SQL Cliente Servidor
SQL Cliente ServidorSQL Cliente Servidor
SQL Cliente Servidor
 
Tarea sql
Tarea sqlTarea sql
Tarea sql
 
Sql
SqlSql
Sql
 
SENTENCIAS DE SQL SERVER
SENTENCIAS DE SQL SERVERSENTENCIAS DE SQL SERVER
SENTENCIAS DE SQL SERVER
 
BD_L8_EXP_ROZIC_CAP9_SQL
BD_L8_EXP_ROZIC_CAP9_SQLBD_L8_EXP_ROZIC_CAP9_SQL
BD_L8_EXP_ROZIC_CAP9_SQL
 
Guia de ejercicio sql
Guia de ejercicio sqlGuia de ejercicio sql
Guia de ejercicio sql
 
SQL-BYRON-COBO
SQL-BYRON-COBOSQL-BYRON-COBO
SQL-BYRON-COBO
 
Consultas basicas en sql server
Consultas basicas en sql serverConsultas basicas en sql server
Consultas basicas en sql server
 
MANEJO DE SENTENCIAS DE RECUPERACIÓN
MANEJO DE SENTENCIAS DE RECUPERACIÓNMANEJO DE SENTENCIAS DE RECUPERACIÓN
MANEJO DE SENTENCIAS DE RECUPERACIÓN
 
Sentencias SQL Cristian Benalcázar
Sentencias SQL Cristian BenalcázarSentencias SQL Cristian Benalcázar
Sentencias SQL Cristian Benalcázar
 
MANEJO DE SENTENCIAS DE RECUPERACIÓN
MANEJO DE SENTENCIAS DE RECUPERACIÓNMANEJO DE SENTENCIAS DE RECUPERACIÓN
MANEJO DE SENTENCIAS DE RECUPERACIÓN
 
Consultas SQL
Consultas SQLConsultas SQL
Consultas SQL
 
Manipulacion de Bases de Datos
Manipulacion de Bases de DatosManipulacion de Bases de Datos
Manipulacion de Bases de Datos
 
Consultas multitabl1 sql
Consultas multitabl1 sqlConsultas multitabl1 sql
Consultas multitabl1 sql
 
Sql y programacion en access 2010
Sql y programacion en access 2010Sql y programacion en access 2010
Sql y programacion en access 2010
 
Sql Basico
Sql BasicoSql Basico
Sql Basico
 
Anon manual sql
Anon   manual sqlAnon   manual sql
Anon manual sql
 
Cliente servidor consultas sql
Cliente servidor consultas sqlCliente servidor consultas sql
Cliente servidor consultas sql
 

Último

Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacajeremiasnifla
 
Tiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IITiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IILauraFernandaValdovi
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptEduardoCorado
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAJAMESDIAZ55
 
CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaSHERELYNSAMANTHAPALO1
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaXjoseantonio01jossed
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestajeffsalazarpuente
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfmatepura
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Francisco Javier Mora Serrano
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASfranzEmersonMAMANIOC
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfMirthaFernandez12
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.ALEJANDROLEONGALICIA
 
sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7luisanthonycarrascos
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfMikkaelNicolae
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdfFernandaGarca788912
 
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENSMANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENSLuisLobatoingaruca
 
TALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación públicaTALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación públicaSantiagoSanchez353883
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfedsonzav8
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaXimenaFallaLecca1
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdfevin1703e
 

Último (20)

Reporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpacaReporte de Exportaciones de Fibra de alpaca
Reporte de Exportaciones de Fibra de alpaca
 
Tiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo IITiempos Predeterminados MOST para Estudio del Trabajo II
Tiempos Predeterminados MOST para Estudio del Trabajo II
 
Introducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.pptIntroducción a los sistemas neumaticos.ppt
Introducción a los sistemas neumaticos.ppt
 
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESAIPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
IPERC Y ATS - SEGURIDAD INDUSTRIAL PARA TODA EMPRESA
 
CICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresaCICLO DE DEMING que se encarga en como mejorar una empresa
CICLO DE DEMING que se encarga en como mejorar una empresa
 
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctricaProyecto de iluminación "guia" para proyectos de ingeniería eléctrica
Proyecto de iluminación "guia" para proyectos de ingeniería eléctrica
 
Diapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuestaDiapositiva de Topografía Nivelación simple y compuesta
Diapositiva de Topografía Nivelación simple y compuesta
 
ECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdfECONOMIA APLICADA SEMANA 555555555544.pdf
ECONOMIA APLICADA SEMANA 555555555544.pdf
 
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
Hanns Recabarren Diaz (2024), Implementación de una herramienta de realidad v...
 
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIASTEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
TEXTURA Y DETERMINACION DE ROCAS SEDIMENTARIAS
 
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdfPresentación Proyecto Trabajo Creativa Profesional Azul.pdf
Presentación Proyecto Trabajo Creativa Profesional Azul.pdf
 
Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.Flujo potencial, conceptos básicos y ejemplos resueltos.
Flujo potencial, conceptos básicos y ejemplos resueltos.
 
sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7sistema de construcción Drywall semana 7
sistema de construcción Drywall semana 7
 
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdfReporte de simulación de flujo del agua en un volumen de control MNVA.pdf
Reporte de simulación de flujo del agua en un volumen de control MNVA.pdf
 
Curso intensivo de soldadura electrónica en pdf
Curso intensivo de soldadura electrónica  en pdfCurso intensivo de soldadura electrónica  en pdf
Curso intensivo de soldadura electrónica en pdf
 
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENSMANIOBRA Y CONTROL INNOVATIVO LOGO PLC  SIEMENS
MANIOBRA Y CONTROL INNOVATIVO LOGO PLC SIEMENS
 
TALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación públicaTALLER PAEC preparatoria directamente de la secretaria de educación pública
TALLER PAEC preparatoria directamente de la secretaria de educación pública
 
Manual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdfManual_Identificación_Geoformas_140627.pdf
Manual_Identificación_Geoformas_140627.pdf
 
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO CersaSesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
Sesión 02 TIPOS DE VALORIZACIONES CURSO Cersa
 
Residente de obra y sus funciones que realiza .pdf
Residente de obra y sus funciones que realiza  .pdfResidente de obra y sus funciones que realiza  .pdf
Residente de obra y sus funciones que realiza .pdf
 

SQL SELECT, INSERT, UPDATE y DELETE

  • 1. UNIVERSIDAD REGIONAL AUTONOMA DE LOS ANDES CONSULTAS SQL HECTOR NARANJO 7mo SISTEMAS
  • 2. Elaborar una presentación que describa las siguientes temáticas:  Escribir sentencias SQL SELECT para consultas con operadores de restricción, proyección y enlace.  Escribir sentencias SELECT para enlaces que incluyen tres o más tablas, autoenlaces y múltiples enlaces entre tablas.  Entender y ejemplificar el propósito de la cláusula GROUP BY usando el proceso de evaluación conceptual.  Escribir descripciones en español en sentencias documentadas de SQL.  Escribir las sentencias INSERT, UPDATE y DELETE para modificar las filas de una tabla.
  • 3. Escribir sentencias SQL SELECT para consultas con operadores de restricción, proyección y enlace. La sentencia SELECT, permite recuperar datos de una o varias tablas, forma parte del DML (lenguaje de manipulación de datos). SINTAXIS
  • 4. Con la cláusula FROM indicamos en qué tabla tiene que buscar la información, el resultado se obtiene de una única tabla. La sintaxis de la cláusula es: FROM especificación de tabla En la cláusula IN el nombre de la base de datos debe incluir el camino completo, la extensión (.mdb), y estar entre comillas simples. Supongamos que la tabla empleados estuviese en otra base de datos llamada otra en la carpeta c:mis documentos, habría que indicarlo así: SELECT * FROM empleados IN 'c:mis documentosotra.mdb' Se utiliza el asterisco * en la lista de selección para indicar 'todas las columnas de la tabla'. SELECT * FROM oficinas Lista todos los datos de las oficinas La clausula FROM
  • 5. La cláusula WHERE La cláusula WHERE selecciona unicamente las filas que cumplan la condición de selección especificada. En la consulta sólo aparecerán las filas para las cuales la condición es verdadera (TRUE), los valores nulos (NULL) no se incluyen por lo tanto en las filas del resultado. La condición de selección puede ser cualquier condición válida o combinación de condiciones utilizando los operadores NOT (no) AND (y) y OR (ó). En ACCESS2000 una cláusula WHERE puede contener hasta 40 expresiones vinculadas por operadores lógicos AND y OR. Si quieres ver cómo funcionan los operadores lógicos ejemplo : SELECT nombre FROM empleados WHERE oficina = 12 Lista el nombre de los empleados de la oficina 12. La cláusula WHERE
  • 6. Escribir sentencias SELECT para enlaces que incluyen tres o más tablas, autoenlaces y múltiples enlaces entre tablas. Al estudiar las consultas multitabla llamadas así porque están basadas en más de una tabla. El SQL de Microsoft Jet 4.x soporta dos grupos de consultas multitabla: - la unión de tablas - la composición de tablas El operador que permite realizar esta operación es el operador UNION.
  • 7. La composición de tablas consiste en concatenar filas de una tabla con filas de otra. En este caso obtenemos una tabla con las columnas de la primera tabla unidas a las columnas de la segunda tabla, y las filas de la tabla resultante son concatenaciones de filas de la primera tabla con filas de la segunda tabla. Ejemplo:
  • 8.  El producto cartesiano es un tipo de composición de tablas, aplicando el producto cartesiano a dos tablas se obtiene una tabla con las columnas de la primera tabla unidas a las columnas de la segunda tabla, y las filas de la tabla resultante son todas las posibles concatenaciones de filas de la primera tabla con filas de la segunda tabla. La sintaxis es la siguiente:  El producto cartesiano se indica poniendo en la FROM las tablas que queremos componer separadas por comas, podemos obtener así el producto cartesiano de dos, tres, o más tablas. Se pueden combinar más de dos tablas En este caso hay que sustituir en la sintaxis una tabla por un INNER JOIN completo. Por ejemplo:  SELECT * FROM (pedidos INNER JOIN clientes ON pedidos.clie = clientes.numclie) INNER JOIN empleados ON pedidos.rep = empleados.numemp
  • 9.  El INNER JOIN es otro tipo de composición de tablas, permite emparejar filas de distintas tablas de forma más eficiente que con el producto cartesiano cuando una de las columnas de emparejamiento está indexada. Ya que en vez de hacer el producto cartesiano completo y luego seleccionar la filas que cumplen la condición de emparejamiento, para cada fila de una de las tablas busca directamente en la otra tabla las filas que cumplen la condición, con lo cual se emparejan sólo las filas que luego aparecen en el resultado. La sintaxis es la siguiente: Ejemplo: SELECT * FROM pedidos INNER JOIN clientes ON pedidos.clie = clientes.numclie
  • 10. SELECT nombre, oficina, contrato FROMempleados ORDER BY oficina es equivalente a SELECT nombre, oficina, contrato FROM empleados ORDER BY 2 Ordenación de las filas - ORDER BY - Para ordenar las filas del resultado de la consulta, tenemos la cláusula ORDER BY. Con esta cláusula se altera el orden de visualización de las filas de la tabla pero en ningún caso se modifica el orden de las filas dentro de la tabla. La tabla no se modifica. Podemos indicar la columna por la que queremos ordenar utilizando su nombre de columna (nbcolumna) o utilizando su número de orden que ocupa en la lista de selección (Nºcolumna). Ejemplo:
  • 11. La cláusula GROUP BY Se pueden obtener subtotales con la cláusula GROUP BY. Una consulta con una cláusula GROUP BY se denomina consulta agrupada ya que agrupa los datos de la tabla origen yproduce una única fila resumen por cada grupo formado. Las columnas indicadas en el GROUP BY se llaman columnas de agrupación. Ejemplo: SELECT SUM(ventas) FROM repventas Obtiene la suma de las ventas de todos los empleados. SELECT SUM(ventas) FROM repventas GROUP BY oficina Se forma un grupo para cada oficina, con las filas de la oficina, y la suma se calcula sobre las filas de cada grupo. El ejemplo anterior obtiene una lista con la suma de las ventas de los empleados de cada oficina. Entender y ejemplificar el propósito de la cláusula GROUP BY usando el proceso de evaluación conceptual.
  • 12. Escribir las sentencias INSERT, UPDATE y DELETE para modificar las filas de una tabla.  En este tema vamos a tratar el de la actualización de esos datos, es decir insertar nuevas filas, borrar filas o cambiar el contenido de las filas de una tabla. Estas operaciones modifican los datos almacenados en las tablas pero no su estructura, ni su definición. insertar una fila INSERT INTO...VALUES La inserción de nuevos datos en una tabla se realiza añadiendo filas enteras a la tabla, la sentencia SQL que lo permite es la orden INSERT INTO. La inserción se puede realizar de una fila o de varias filas de golpe, veremos las dos opciones por separado y empezaremos por la inserción de una fila. La sintaxis es la siguiente: INSERT INTO empleados VALUES (200, 'Juan López', 30, NULL, 'rep ventas', #06/23/01#, NULL, 350000, 0)
  • 13. Modificar el contenido de las filas ( UPDATE ) La sentencia UPDATE modifica los valores de una o más columnas en las filas seleccionadas de una o varias tablas. La sintaxis es la siguiente: La cláusula SET especifica qué columnas van a modificarse y qué valores asignar a esas columnas. nbcolumna, es el nombre de la columna a la cual queremos asignar un nuevo valor por lo tanto debe ser una columna de la tabla origen. El SQL estándar exige nombres sin cualificar pero algunas implementaciones (como por ejemplo el SQL de Microsoft Jet que estamos estudiando) sí lo permiten. La expresión en cada asignación debe generar un valor del tipo de dato apropiado para la columna indicada. La expresión debe ser calculable a partir de los valores de la fila que se está actualizando. Expresión no puede ser una subconsulta. Ejemplo: UPDATE oficinas INNER JOIN empleados ON oficinas.oficina = empleados.oficina SET cuota=objetivo*0.01;
  • 14. Borrar filas (DELETE) La sentencia DELETE elimina filas de una tabla. La sintaxis es la siguiente: Ejemplo: DELETE * FROM pedidos WHERE clie IN (SELECT numclie FROM clientes WHERE nombre = 'Julian López'); O bien: DELETE pedidos.* FROM pedidos INNER JOIN clientes ON pedidos.clie = clientes.numclie WHERE nombre = 'Julian López'; Las dos sentencias borran los pedidos del cliente Julian López. En la segunda estamos obligados a poner pedidos.* porque el origen está basado en varias tablas. DELETE * FROM pedidos; o DELETE FROM pedidos; Borra todas las filas de pedidos.