SlideShare a Scribd company logo
1 of 52
Download to read offline
SQL
Introducción a SQL (Structured Query Language) ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Prácticamente todos los motores de bases de datos cumplen con el estándar ANSI SQL-92. Vamos a utilizar ese.
Componentes del lenguaje SQL-92 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Select: sintaxis Select   <columna(s)> From   <tabla(s)>   Es la sentencia utilizada para consultar el contenido de  una o más tablas .  El resultado del Select es  SIEMPRE  una tabla Su forma más simple es
Select:  <columnas> Select  cod, nombre, precio From  Articulo Select  * From  Articulo Select  precio, cod, nombre From  Articulo Select  precio, cod From  Articulo
Select:  <columnas>:  alias de columnas Select  cod, cod  as  codigo From  Articulo Select  cod  as  codigo de articulo From  Articulo Server: Msg 170, Level 15, State 1, Line   1   Line 1: Incorrect syntax near 'de'. Select  cod  as  [codigo de articulo] From  Articulo
Select Select   <columna 1 >  [ AS  <alias 1 > ] , <columna 2 >  [ AS  <alias 2 > ] , … <columna N >  [ AS  <alias 3 > ] From   <tabla>   Donde columna N  puede ser el nombre de una columna  o * para mostrar todas las columnas. Por ahora ...
Select:  <columnas> :  operaciones entre columnas Select  cod, total, cant From  Compra Select  cod, total, cant,  total/cant  as  [precio unit] From  Compra Select  cod, total, cant,  (total/cant) * (1.0)  as  [precio unit] From  Compra Select  cod, total, cant,  (total *1.0) / cant  as  [precio unit] From  Compra
Select:  <columnas> :  fechas Select  factura, fecha From  Factura Select  factura,  DATEPART ( day ,  fecha )  as   dia, DATEPART  ( month ,  fecha )  as   mes, DATEPART  ( year ,  fecha )  as   año From  Factura Select  factura,  Convert ( Char (10), fecha ,105)  as   fecha From  Factura
Palabra clave  distinct Select  codCiudad From  Cliente Select   distinct  codCiudad  From  Cliente Select  nombre, codCiudad From  Cliente Select   distinct  nombre, codCiudad From  Articulo
Select Select  [ distinct ] <columna 1 >  [ AS  <alias 1 > ] , <columna 2 >  [ AS  <alias 2 > ] , … <columna N >  [ AS  <alias 3 > ] From   <tabla>   ,[object Object],[object Object],[object Object],[object Object],[object Object],Por ahora ...
Select: Ejercicio Select  cod, nombre, precio,  precio * 1.21  As  [precio lista] From  Articulo precio : valor sin IVA Mostrar, de cada artículo, el codigo, nombre, precio sin iva y precio con IVA.  Llamar al precio con IVA “precio lista”.
Select: cláusula Where Select   <columna(s)> From   <tabla(s)>   [  Where   <condicion(es)>   ] La sentencia  Select   puede  tener una cláusula  Where Where  se utiliza para poner  una o más  condiciones. Los corchetes se incluyen aquí para indicar que la claúsula Where  es opcional. No deben colocarse en el código SQL.
Select: cláusula Where Select  * From  Compra Select  *  From  Compra Where  factura = 23 Select  factura, total, cant From  Compra Select  factura, total, cant From  Compra Where  factura = 23
Operadores Lógicos:  And, Or, Not Select  *  From  Empleado Where   sexo =  'M' Select  *  From  Empleado Where   codciudad = 2 Select  *  From  Empleado Where   sexo = 'M' And   codciudad = 2 Select  *  From  Empleado Where   sexo = 'M' Or   codciudad = 2
Operadores Lógicos:  And, Or, Not Select  *  From  Empleado Where   sexo =  'M' Select  *  From  Empleado Where   sexo = 'M'   And Not   codciudad = 2 Select  *  From  Empleado Where   sexo = 'M'   Or Not   codciudad = 2 Select  *  From  Empleado Where Not   sexo =  'M'
Operadores aritméticos Select  *  From  Articulo Where   cod = 11 Select  *  From  Articulo Where   cod <> 11 Select  *  From  Articulo Where   cod > 12 Select  *  From  Articulo Where   cod >= 12
Operadores LIKE y NOT LIKE Select  *  From  Articulo Where   nombre=  'Silla' Select  *  From  Articulo Where   nombre LIKE  'Silla%' Select  *  From  Articulo Where   nombre NOT LIKE  'Silla%'
Operadores LIKE y NOT LIKE Select  *  From  Articulo Where   nombre =  '%jardin' Select  *  From  Articulo Where   nombre LIKE  '%jardin' El símbolo de porcentaje (%) equivale a cualquier cadena de 0 ó más caracteres, pero sólo cuando  se utilizan los operadores LIKE o NOT LIKE.
Operadores LIKE y NOT LIKE Select  *  From  Articulo Where   nombre NOT LIKE  '%jardin' Select  *  From  Articulo Where Not   nombre NOT LIKE  '%jardin' Select  *  From  Articulo Where   nombre LIKE  '%jardin' “ todos los artículos de jardin ” “ excluir  los artículos que  no  sean de jardín ” “ los artículos que  no  sean de jardín ”
Tratamiento de valores nulos Select  *  From  Empleado Where   esJefe > 10 Select  *  From  Empleado Where   esJefe < 10 Select  *  From  Empleado Where   esJefe = NULL Cualquier comparación (=, >, <, >=, <=) que incluya un valor NULL  NUNCA  será evaluada como verdadera
Tratamiento de valores nulos Select  *  From  Empleado Where   esJefe <> NULL Select  *  From  Empleado Where   esJefe IS NULL Para manejar los valores nulos utilizar  SIEMPRE   IS NULL ó IS NOT NULL Select  *  From  Empleado Where   esJefe IS NOT NULL
Claúsula where: manejo de   fechas Select  factura, fecha From  Factura Select  factura, fecha From  Factura Where  fecha  >  '1/1/2005'  And  fecha  <  '1/3/2005' Cuando en la base de datos se guarda un valor de tipo TIMESTAMP, es preciso manejarlo como tal (considerar horas, minutos y segundo)
Claúsula where: manejo de   fechas Select  factura, fecha From  Factura Where  fecha  >=  '1/1/2005'  And  fecha  <  '1/2/2005' “ mostrar las ventas ocurridas el 1 de enero de 2005 ” Select  factura, fecha From  Compra Where DATEPART ( day ,  fecha ) = 1 And  DATEPART  ( month ,  fecha ) = 1 And  DATEPART  ( year ,  fecha ) = 2005
Select: Ejercicio Select  *  From  Materia Where  codigo  LIKE  '71.%‘ Or  nombre  IS NULL Mostrar toda la información posible de las materias cuyo código comience con 71. o cuya descripción no se conozca
Select: cláusula Where Select  < columnas > From   <tabla>   [  Where   <condicion>  ] ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],Por ahora ...
Select: cláusula  Order by Select   <columna(s)> From   <tabla(s)>   [  Where   <condicion(es)>   ] [  Order by   <criterio(s)>   ] La sentencia  Select   puede  tener una cláusula  Order by Order by  se utiliza para poner  una o más  criterios de ordenación de las filas de la tabla resultado.
Select: cláusula  Order by Select  *  From  Empleado Order by   legajo  ASC Select  *  From  Empleado Order by   legajo  DESC Select  *  From  Empleado Order by   legajo
Select: cláusula  Order by Select  *  From  Empleado Order by   sexo Select  *  From  Empleado Order by   Sexo  ASC,   codCiudad  DESC
Select: cláusula  Order by Select   <columna(s)> From   <tabla(s)>   [  Where   <condicion(es)>   ] [  Order by   <columna 1 >  [   ASC | DESC   ] , <columna 2 >  [   ASC   | DESC   ] ,   ... <columna N >  [   ASC   | DESC   ] ] Por ahora ...
Select: Ejercicio Select  *  From  Ventas Order by   Año, ventas$  Desc Mostrar las ventas por provincia y por año, ordenando en primera medida por el año en forma ascendente, y luego ordenar las provincias en forma descendente por el valor de las ventas.
Insert: sintaxis Insert Into   <tabla>   Values   (valor 1 , valor 2 , valor 3 , ..., valor N ) Es la sentencia utilizada para  agregar  filas a una tabla.  Con esta sintaxis, una sentencia Insert coloca  una sola fila  en una tabla. Para colocar varias filas, será necesario hacer un  Insert  para cada una. Su forma más simple es
Insert: sintaxis Insert Into  Empleado  Values  (12, Fernando, 23/07/1986) Server: Msg 128, Level 15, State 1, Line 1 The name 'Fernando' is not permitted in this context. Only constants, expressions, or variables allowed here. Column names are not permitted.
Insert: sintaxis Insert Into  Empleado  Values  (12,  'Fernando' , 23/07/1986) Encerrar entre  comillas simples  los  valores constantes de tipo  texto  ó  fecha .
Insert: sintaxis Insert Into  Empleado  Values  (12,  'Fernando' ,  '23/07/1986' ) Encerrar entre  comillas simples  los  valores constantes de tipo  texto  ó  fecha .
Insert: sintaxis Insert Into  Empleado  Values  (12,  ' Fernando ' ) Server: Msg 213, Level 16, State 4, Line 1 Insert Error: Column name or number of supplied values does not match table definition.
Insert: sintaxis Insert Into   <tabla>   Values   (valor 1 , valor 2 , valor 3 , ..., valor N ) La sintaxis Sólo puede utilizarse cuando se van a dar valores para todas las columnas de la tabla. Cuando se desean proveer menos valores, es preciso utilizar la sintaxis: Insert Into   <tabla>   (col 1 , col 2 , …, col N ) Values   (valor 1 , valor 2 , ..., valor N )
Insert: sintaxis Insert Into  Empleado ( legajo , nombre ) Values  (12,  ' Fernando ' )
Insert: sintaxis Insert Into  Empleado ( nombre ,  legajo ) Values  (12,  ' Fernando ' ) Server: Msg 245, Level 16, State 1, Line 1 Syntax error converting the varchar value 'Fernando' to a column of data type int. El orden de las columnas indicadas a continuación de la tabla debe corresponderse con los valores.
Insert: sintaxis Insert Into  Empleado (nombre, fec_nac)  Values  ( 'Fernando' ,  '23/07/1986' ) Es preciso dar valores para todas las columnas que no acepten nulos. Server: Msg 515, Level 16, State 2, Line 1 Cannot insert the value NULL into column 'Legajo', table 'GDatos.dbo.Empleado';  column does not allow nulls . INSERT fails. The statement has been terminated.
Insert: Ejercicio Insert Into  Cliente Values  (14, 'Patricia',0, NULL)  q_compras : cantidad de compras que  hizo un cliente. fec_uc : fecha de última compra Dar de alta a un nuevo cliente, Patricia, con ID 14 (todavía no realizó ninguna compra) Insert Into   Cliente(cod,nombre,q_compras) Values  (14, 'Patricia',0)  o
Delete: sintaxis Delete From   <tabla>   [ Where   <condición>  ] Es la sentencia utilizada para  eliminar  filas de  una   tabla .
Delete: sintaxis Delete From  Empleado  Si no se especifica una condición Where, se eliminarán  todas  las  filas de la tabla (usar con cuidado)
Delete: sintaxis Delete From  Empleado  Una buena práctica es, antes de ejecutar una sentencia Delete, cambiar la palabar Delete por Select *. De esta forma, podemos preveer qué filas se van a eliminar. Select * From  Empleado
Delete: sintaxis Delete From  Empleado Where  Empleado = 11  La cláusula  Where  de la sentencia  Delete  tiene la misma sintaxis que en la sentencia  Select . Select * From  Empleado Where  Empleado = 11
Delete: Ejercicio Delete From  Compra Where  fec_uc <  '01/01/2005' And  q_compras <= 5 q_compras : cantidad de compras que  hizo un cliente. fec_uc : fecha de última compra Eliminar de la tabla todos los clientes que no hayan realizado ninguna compra entre el 1 de enero de 2005 y hoy, salvo aquellos que hayan realizado más de 5 compras.
Update: sintaxis Update  <tabla>   Set col 1  = valor 1 , col 2  = valor 2 , ... col N  = valor N [ Where   <condición>  ] Es la sentencia utilizada para  actualizar  filas de  una   tabla .  No es necesario indicar valores para todas las columnas de la tabla; basta con aquellas que se quieren actualizar.
Update Update  Compra Set  cant = NULL   Si no se incluye una cláusula Where, se actualizan todas las filas de la tabla
Update Update  Compra Set  cant = NULL   Where  cod = 4 Con una cláusula Where, es posible  modificar solamente algunas filas
Update Update  Compra Set  total = total * 2 El valor a colocar puede depender del valor anterior.
Update Update  Compra Set  cant = NULL, total = total * 2   Where  cod = 4 Puede actualizarse el valor de más de una columna simultáneamente.
Update: Ejercicio Update  Compra Set  fec_uc =  ‘03/08/07', q_compras = q_compras + 1   Where  cod = 13 q_compras : cantidad de compras que  hizo un cliente. fec_uc : fecha de última compra Supongamos que el cliente 13 ( Claudia ) realiza hoy, 3 de agosto de 2007,  una  compra. Actualizar la tabla  Cliente .

More Related Content

What's hot (13)

Opciones de autorrelleno.Mely
Opciones de autorrelleno.MelyOpciones de autorrelleno.Mely
Opciones de autorrelleno.Mely
 
Primera practica Excel 2007
Primera practica Excel 2007Primera practica Excel 2007
Primera practica Excel 2007
 
sub Consultas Oracle SQL
sub Consultas Oracle SQLsub Consultas Oracle SQL
sub Consultas Oracle SQL
 
Funciones de Agregacion
Funciones de AgregacionFunciones de Agregacion
Funciones de Agregacion
 
Taller26
Taller26Taller26
Taller26
 
EXCEL
EXCELEXCEL
EXCEL
 
Clase15
Clase15Clase15
Clase15
 
Manual de reglas de integración (v1.1) eFactory Software de Contabilidad en l...
Manual de reglas de integración (v1.1) eFactory Software de Contabilidad en l...Manual de reglas de integración (v1.1) eFactory Software de Contabilidad en l...
Manual de reglas de integración (v1.1) eFactory Software de Contabilidad en l...
 
Evaluación 3ER Parcial programación web 1
Evaluación 3ER Parcial programación web 1Evaluación 3ER Parcial programación web 1
Evaluación 3ER Parcial programación web 1
 
Consultas de resumen
Consultas de resumenConsultas de resumen
Consultas de resumen
 
Factura
FacturaFactura
Factura
 
Escalas autocad
Escalas autocadEscalas autocad
Escalas autocad
 
MANUAL DE DFD
MANUAL DE DFD MANUAL DE DFD
MANUAL DE DFD
 

Viewers also liked (10)

Sql3
Sql3Sql3
Sql3
 
TRIGGERS Cliente - servidor
TRIGGERS Cliente - servidorTRIGGERS Cliente - servidor
TRIGGERS Cliente - servidor
 
Plsql
PlsqlPlsql
Plsql
 
Disparadores Trigger En Sql Y My Sql
Disparadores Trigger En Sql Y My SqlDisparadores Trigger En Sql Y My Sql
Disparadores Trigger En Sql Y My Sql
 
Triggers o disparadores en MySQL
Triggers o disparadores en MySQL Triggers o disparadores en MySQL
Triggers o disparadores en MySQL
 
Procedimientos almacenados en MySQL
Procedimientos almacenados en MySQLProcedimientos almacenados en MySQL
Procedimientos almacenados en MySQL
 
Ejemplo de Trigger en Mysql
Ejemplo de Trigger en MysqlEjemplo de Trigger en Mysql
Ejemplo de Trigger en Mysql
 
Programación MySQL-Ejercicios
Programación MySQL-EjerciciosProgramación MySQL-Ejercicios
Programación MySQL-Ejercicios
 
Ejercicios sql
Ejercicios sqlEjercicios sql
Ejercicios sql
 
MANUAL COMPLETO DE SQL
MANUAL COMPLETO DE SQLMANUAL COMPLETO DE SQL
MANUAL COMPLETO DE SQL
 

Similar to Presentacio Sql 1

Presentacio sql ok
Presentacio sql okPresentacio sql ok
Presentacio sql okBB
 
Unidad iii dql
Unidad iii dqlUnidad iii dql
Unidad iii dqlanacmaduro
 
GUÍA RÁPIDA LENGUAJE C/AL
GUÍA RÁPIDA LENGUAJE C/ALGUÍA RÁPIDA LENGUAJE C/AL
GUÍA RÁPIDA LENGUAJE C/ALmakac0 makac0
 
Trabajando con sql (parte 2)
Trabajando con sql (parte 2)Trabajando con sql (parte 2)
Trabajando con sql (parte 2)Juan Vade
 
Complemento del manual de programacion iii sql
Complemento del manual de programacion iii sqlComplemento del manual de programacion iii sql
Complemento del manual de programacion iii sqlLaura Miranda Dominguez
 
Quiero hacer ágil, ¿y ahora qué: Java, Ruby o Scala?
Quiero hacer ágil, ¿y ahora qué: Java, Ruby o Scala?Quiero hacer ágil, ¿y ahora qué: Java, Ruby o Scala?
Quiero hacer ágil, ¿y ahora qué: Java, Ruby o Scala?Agile Spain
 
Mejoras en T-SQL para SQL Server 2005
Mejoras en T-SQL para SQL Server 2005Mejoras en T-SQL para SQL Server 2005
Mejoras en T-SQL para SQL Server 2005pabloesp
 
Condiciones
CondicionesCondiciones
Condicioneschembe
 
Lenguaje de programacion C++ 3
Lenguaje de programacion C++ 3Lenguaje de programacion C++ 3
Lenguaje de programacion C++ 3David
 
Condiciones
CondicionesCondiciones
Condicioneschembe
 
Unidad3
Unidad3Unidad3
Unidad3JHONNY
 
Lenguajesdeprogramacion c nivel1-unidad3
Lenguajesdeprogramacion c nivel1-unidad3Lenguajesdeprogramacion c nivel1-unidad3
Lenguajesdeprogramacion c nivel1-unidad3camnav
 
Condiciones
CondicionesCondiciones
Condicionesyesid19
 

Similar to Presentacio Sql 1 (20)

Presentacio sql ok
Presentacio sql okPresentacio sql ok
Presentacio sql ok
 
Charla Mysql
Charla MysqlCharla Mysql
Charla Mysql
 
Unidad iii dql
Unidad iii dqlUnidad iii dql
Unidad iii dql
 
GUÍA RÁPIDA LENGUAJE C/AL
GUÍA RÁPIDA LENGUAJE C/ALGUÍA RÁPIDA LENGUAJE C/AL
GUÍA RÁPIDA LENGUAJE C/AL
 
Trabajando con sql (parte 2)
Trabajando con sql (parte 2)Trabajando con sql (parte 2)
Trabajando con sql (parte 2)
 
Sentencia select
Sentencia selectSentencia select
Sentencia select
 
Guia de ejercicios para resolver sql
Guia de ejercicios para resolver sqlGuia de ejercicios para resolver sql
Guia de ejercicios para resolver sql
 
Complemento del manual de programacion iii sql
Complemento del manual de programacion iii sqlComplemento del manual de programacion iii sql
Complemento del manual de programacion iii sql
 
Tutorial Sql
Tutorial SqlTutorial Sql
Tutorial Sql
 
Ti. Sql.Caso1al9.Consultas
Ti. Sql.Caso1al9.ConsultasTi. Sql.Caso1al9.Consultas
Ti. Sql.Caso1al9.Consultas
 
Quiero hacer ágil, ¿y ahora qué: Java, Ruby o Scala?
Quiero hacer ágil, ¿y ahora qué: Java, Ruby o Scala?Quiero hacer ágil, ¿y ahora qué: Java, Ruby o Scala?
Quiero hacer ágil, ¿y ahora qué: Java, Ruby o Scala?
 
Mejoras en T-SQL para SQL Server 2005
Mejoras en T-SQL para SQL Server 2005Mejoras en T-SQL para SQL Server 2005
Mejoras en T-SQL para SQL Server 2005
 
Sql2
Sql2Sql2
Sql2
 
Sentencia select
Sentencia selectSentencia select
Sentencia select
 
Condiciones
CondicionesCondiciones
Condiciones
 
Lenguaje de programacion C++ 3
Lenguaje de programacion C++ 3Lenguaje de programacion C++ 3
Lenguaje de programacion C++ 3
 
Condiciones
CondicionesCondiciones
Condiciones
 
Unidad3
Unidad3Unidad3
Unidad3
 
Lenguajesdeprogramacion c nivel1-unidad3
Lenguajesdeprogramacion c nivel1-unidad3Lenguajesdeprogramacion c nivel1-unidad3
Lenguajesdeprogramacion c nivel1-unidad3
 
Condiciones
CondicionesCondiciones
Condiciones
 

Recently uploaded

PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOSPRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOSLincangoKevin
 
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdfTENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdfJoseAlejandroPerezBa
 
Tecnológia 2024.docx.Tecnológia 2024.docx.
Tecnológia 2024.docx.Tecnológia 2024.docx.Tecnológia 2024.docx.Tecnológia 2024.docx.
Tecnológia 2024.docx.Tecnológia 2024.docx.marianarodriguezc797
 
Matriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docxMatriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docxPaolaCarolinaCarvaja
 
Inteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidadInteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidaddanik1023m
 
VIDEOS DE APOYO.docx E
VIDEOS DE APOYO.docx                                  EVIDEOS DE APOYO.docx                                  E
VIDEOS DE APOYO.docx Emialexsolar
 
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...RaymondCode
 
El diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimosEl diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimosLCristinaForchue
 
Análisis de artefactos tecnologicos .pdf
Análisis de artefactos tecnologicos .pdfAnálisis de artefactos tecnologicos .pdf
Análisis de artefactos tecnologicos .pdfcastrodanna185
 
Actividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdfActividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdfalejandrogomezescoto
 
La Electricidad y La Electrónica.pdf....
La Electricidad y La Electrónica.pdf....La Electricidad y La Electrónica.pdf....
La Electricidad y La Electrónica.pdf....Aaron Betancourt
 
La tablet trabajo en grupo del grado 9-2
La tablet trabajo en grupo del grado 9-2La tablet trabajo en grupo del grado 9-2
La tablet trabajo en grupo del grado 9-2montoyagabriela340
 
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdfPresentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdfymiranda2
 
De Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NETDe Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NETGermán Küber
 
Carta de Premio y Excel angeline 11-2pdf
Carta de Premio y Excel angeline 11-2pdfCarta de Premio y Excel angeline 11-2pdf
Carta de Premio y Excel angeline 11-2pdfangelinebocanegra1
 
Los mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdfLos mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdfodalistar77
 
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...OLGAMILENAMONTAEZNIO
 
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdfInmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdfOBr.global
 

Recently uploaded (20)

PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOSPRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
PRESENTACION DEL TEMA LOS MEJORES SIMULADORES DE CIRCUITOS ELCTRONICOS
 
BEDEC Proyecto y obra , novedades 2024 - Xavier Folch
BEDEC Proyecto y obra , novedades 2024 - Xavier FolchBEDEC Proyecto y obra , novedades 2024 - Xavier Folch
BEDEC Proyecto y obra , novedades 2024 - Xavier Folch
 
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdfTENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
TENDENCIAS DE IA Explorando el futuro de la tecnologia.pdf
 
Tecnológia 2024.docx.Tecnológia 2024.docx.
Tecnológia 2024.docx.Tecnológia 2024.docx.Tecnológia 2024.docx.Tecnológia 2024.docx.
Tecnológia 2024.docx.Tecnológia 2024.docx.
 
Matriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docxMatriz de integración de tecnologías- Paola Carvajal.docx
Matriz de integración de tecnologías- Paola Carvajal.docx
 
Inteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidadInteligencia artificial dentro de la contabilidad
Inteligencia artificial dentro de la contabilidad
 
VIDEOS DE APOYO.docx E
VIDEOS DE APOYO.docx                                  EVIDEOS DE APOYO.docx                                  E
VIDEOS DE APOYO.docx E
 
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
Actividad 14: Diseño de Algoritmos Paralelos Actividad 14: Diseño de Algoritm...
 
El diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimosEl diseño de Algoritmos Paralelos.pdf - analisis de algortimos
El diseño de Algoritmos Paralelos.pdf - analisis de algortimos
 
BEDEC Sostenibilidad, novedades 2024 - Laura Silva
BEDEC Sostenibilidad, novedades 2024 - Laura SilvaBEDEC Sostenibilidad, novedades 2024 - Laura Silva
BEDEC Sostenibilidad, novedades 2024 - Laura Silva
 
Análisis de artefactos tecnologicos .pdf
Análisis de artefactos tecnologicos .pdfAnálisis de artefactos tecnologicos .pdf
Análisis de artefactos tecnologicos .pdf
 
Actividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdfActividad 14_ Diseño de Algoritmos Paralelos.pdf
Actividad 14_ Diseño de Algoritmos Paralelos.pdf
 
La Electricidad y La Electrónica.pdf....
La Electricidad y La Electrónica.pdf....La Electricidad y La Electrónica.pdf....
La Electricidad y La Electrónica.pdf....
 
La tablet trabajo en grupo del grado 9-2
La tablet trabajo en grupo del grado 9-2La tablet trabajo en grupo del grado 9-2
La tablet trabajo en grupo del grado 9-2
 
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdfPresentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
Presentación - Diseño de Algoritmos Paralelos - Grupo 2.pdf
 
De Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NETDe Código a Ejecución: El Papel Fundamental del MSIL en .NET
De Código a Ejecución: El Papel Fundamental del MSIL en .NET
 
Carta de Premio y Excel angeline 11-2pdf
Carta de Premio y Excel angeline 11-2pdfCarta de Premio y Excel angeline 11-2pdf
Carta de Premio y Excel angeline 11-2pdf
 
Los mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdfLos mejores simuladores de circuitos electrónicos.pdf
Los mejores simuladores de circuitos electrónicos.pdf
 
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
Actividad 1-PRESENTACIÓN ANIMADA.pptxPreservación y conservación de los docum...
 
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdfInmersión global en ciberseguridad e IA en la conferencia RSA.pdf
Inmersión global en ciberseguridad e IA en la conferencia RSA.pdf
 

Presentacio Sql 1

  • 1. SQL
  • 2.
  • 3.
  • 4. Select: sintaxis Select <columna(s)> From <tabla(s)> Es la sentencia utilizada para consultar el contenido de una o más tablas . El resultado del Select es SIEMPRE una tabla Su forma más simple es
  • 5. Select: <columnas> Select cod, nombre, precio From Articulo Select * From Articulo Select precio, cod, nombre From Articulo Select precio, cod From Articulo
  • 6. Select: <columnas>: alias de columnas Select cod, cod as codigo From Articulo Select cod as codigo de articulo From Articulo Server: Msg 170, Level 15, State 1, Line 1 Line 1: Incorrect syntax near 'de'. Select cod as [codigo de articulo] From Articulo
  • 7. Select Select <columna 1 > [ AS <alias 1 > ] , <columna 2 > [ AS <alias 2 > ] , … <columna N > [ AS <alias 3 > ] From <tabla> Donde columna N puede ser el nombre de una columna o * para mostrar todas las columnas. Por ahora ...
  • 8. Select: <columnas> : operaciones entre columnas Select cod, total, cant From Compra Select cod, total, cant, total/cant as [precio unit] From Compra Select cod, total, cant, (total/cant) * (1.0) as [precio unit] From Compra Select cod, total, cant, (total *1.0) / cant as [precio unit] From Compra
  • 9. Select: <columnas> : fechas Select factura, fecha From Factura Select factura, DATEPART ( day , fecha ) as dia, DATEPART ( month , fecha ) as mes, DATEPART ( year , fecha ) as año From Factura Select factura, Convert ( Char (10), fecha ,105) as fecha From Factura
  • 10. Palabra clave distinct Select codCiudad From Cliente Select distinct codCiudad From Cliente Select nombre, codCiudad From Cliente Select distinct nombre, codCiudad From Articulo
  • 11.
  • 12. Select: Ejercicio Select cod, nombre, precio, precio * 1.21 As [precio lista] From Articulo precio : valor sin IVA Mostrar, de cada artículo, el codigo, nombre, precio sin iva y precio con IVA. Llamar al precio con IVA “precio lista”.
  • 13. Select: cláusula Where Select <columna(s)> From <tabla(s)> [ Where <condicion(es)> ] La sentencia Select puede tener una cláusula Where Where se utiliza para poner una o más condiciones. Los corchetes se incluyen aquí para indicar que la claúsula Where es opcional. No deben colocarse en el código SQL.
  • 14. Select: cláusula Where Select * From Compra Select * From Compra Where factura = 23 Select factura, total, cant From Compra Select factura, total, cant From Compra Where factura = 23
  • 15. Operadores Lógicos: And, Or, Not Select * From Empleado Where sexo = 'M' Select * From Empleado Where codciudad = 2 Select * From Empleado Where sexo = 'M' And codciudad = 2 Select * From Empleado Where sexo = 'M' Or codciudad = 2
  • 16. Operadores Lógicos: And, Or, Not Select * From Empleado Where sexo = 'M' Select * From Empleado Where sexo = 'M' And Not codciudad = 2 Select * From Empleado Where sexo = 'M' Or Not codciudad = 2 Select * From Empleado Where Not sexo = 'M'
  • 17. Operadores aritméticos Select * From Articulo Where cod = 11 Select * From Articulo Where cod <> 11 Select * From Articulo Where cod > 12 Select * From Articulo Where cod >= 12
  • 18. Operadores LIKE y NOT LIKE Select * From Articulo Where nombre= 'Silla' Select * From Articulo Where nombre LIKE 'Silla%' Select * From Articulo Where nombre NOT LIKE 'Silla%'
  • 19. Operadores LIKE y NOT LIKE Select * From Articulo Where nombre = '%jardin' Select * From Articulo Where nombre LIKE '%jardin' El símbolo de porcentaje (%) equivale a cualquier cadena de 0 ó más caracteres, pero sólo cuando se utilizan los operadores LIKE o NOT LIKE.
  • 20. Operadores LIKE y NOT LIKE Select * From Articulo Where nombre NOT LIKE '%jardin' Select * From Articulo Where Not nombre NOT LIKE '%jardin' Select * From Articulo Where nombre LIKE '%jardin' “ todos los artículos de jardin ” “ excluir los artículos que no sean de jardín ” “ los artículos que no sean de jardín ”
  • 21. Tratamiento de valores nulos Select * From Empleado Where esJefe > 10 Select * From Empleado Where esJefe < 10 Select * From Empleado Where esJefe = NULL Cualquier comparación (=, >, <, >=, <=) que incluya un valor NULL NUNCA será evaluada como verdadera
  • 22. Tratamiento de valores nulos Select * From Empleado Where esJefe <> NULL Select * From Empleado Where esJefe IS NULL Para manejar los valores nulos utilizar SIEMPRE IS NULL ó IS NOT NULL Select * From Empleado Where esJefe IS NOT NULL
  • 23. Claúsula where: manejo de fechas Select factura, fecha From Factura Select factura, fecha From Factura Where fecha > '1/1/2005' And fecha < '1/3/2005' Cuando en la base de datos se guarda un valor de tipo TIMESTAMP, es preciso manejarlo como tal (considerar horas, minutos y segundo)
  • 24. Claúsula where: manejo de fechas Select factura, fecha From Factura Where fecha >= '1/1/2005' And fecha < '1/2/2005' “ mostrar las ventas ocurridas el 1 de enero de 2005 ” Select factura, fecha From Compra Where DATEPART ( day , fecha ) = 1 And DATEPART ( month , fecha ) = 1 And DATEPART ( year , fecha ) = 2005
  • 25. Select: Ejercicio Select * From Materia Where codigo LIKE '71.%‘ Or nombre IS NULL Mostrar toda la información posible de las materias cuyo código comience con 71. o cuya descripción no se conozca
  • 26.
  • 27. Select: cláusula Order by Select <columna(s)> From <tabla(s)> [ Where <condicion(es)> ] [ Order by <criterio(s)> ] La sentencia Select puede tener una cláusula Order by Order by se utiliza para poner una o más criterios de ordenación de las filas de la tabla resultado.
  • 28. Select: cláusula Order by Select * From Empleado Order by legajo ASC Select * From Empleado Order by legajo DESC Select * From Empleado Order by legajo
  • 29. Select: cláusula Order by Select * From Empleado Order by sexo Select * From Empleado Order by Sexo ASC, codCiudad DESC
  • 30. Select: cláusula Order by Select <columna(s)> From <tabla(s)> [ Where <condicion(es)> ] [ Order by <columna 1 > [ ASC | DESC ] , <columna 2 > [ ASC | DESC ] , ... <columna N > [ ASC | DESC ] ] Por ahora ...
  • 31. Select: Ejercicio Select * From Ventas Order by Año, ventas$ Desc Mostrar las ventas por provincia y por año, ordenando en primera medida por el año en forma ascendente, y luego ordenar las provincias en forma descendente por el valor de las ventas.
  • 32. Insert: sintaxis Insert Into <tabla> Values (valor 1 , valor 2 , valor 3 , ..., valor N ) Es la sentencia utilizada para agregar filas a una tabla. Con esta sintaxis, una sentencia Insert coloca una sola fila en una tabla. Para colocar varias filas, será necesario hacer un Insert para cada una. Su forma más simple es
  • 33. Insert: sintaxis Insert Into Empleado Values (12, Fernando, 23/07/1986) Server: Msg 128, Level 15, State 1, Line 1 The name 'Fernando' is not permitted in this context. Only constants, expressions, or variables allowed here. Column names are not permitted.
  • 34. Insert: sintaxis Insert Into Empleado Values (12, 'Fernando' , 23/07/1986) Encerrar entre comillas simples los valores constantes de tipo texto ó fecha .
  • 35. Insert: sintaxis Insert Into Empleado Values (12, 'Fernando' , '23/07/1986' ) Encerrar entre comillas simples los valores constantes de tipo texto ó fecha .
  • 36. Insert: sintaxis Insert Into Empleado Values (12, ' Fernando ' ) Server: Msg 213, Level 16, State 4, Line 1 Insert Error: Column name or number of supplied values does not match table definition.
  • 37. Insert: sintaxis Insert Into <tabla> Values (valor 1 , valor 2 , valor 3 , ..., valor N ) La sintaxis Sólo puede utilizarse cuando se van a dar valores para todas las columnas de la tabla. Cuando se desean proveer menos valores, es preciso utilizar la sintaxis: Insert Into <tabla> (col 1 , col 2 , …, col N ) Values (valor 1 , valor 2 , ..., valor N )
  • 38. Insert: sintaxis Insert Into Empleado ( legajo , nombre ) Values (12, ' Fernando ' )
  • 39. Insert: sintaxis Insert Into Empleado ( nombre , legajo ) Values (12, ' Fernando ' ) Server: Msg 245, Level 16, State 1, Line 1 Syntax error converting the varchar value 'Fernando' to a column of data type int. El orden de las columnas indicadas a continuación de la tabla debe corresponderse con los valores.
  • 40. Insert: sintaxis Insert Into Empleado (nombre, fec_nac) Values ( 'Fernando' , '23/07/1986' ) Es preciso dar valores para todas las columnas que no acepten nulos. Server: Msg 515, Level 16, State 2, Line 1 Cannot insert the value NULL into column 'Legajo', table 'GDatos.dbo.Empleado'; column does not allow nulls . INSERT fails. The statement has been terminated.
  • 41. Insert: Ejercicio Insert Into Cliente Values (14, 'Patricia',0, NULL) q_compras : cantidad de compras que hizo un cliente. fec_uc : fecha de última compra Dar de alta a un nuevo cliente, Patricia, con ID 14 (todavía no realizó ninguna compra) Insert Into Cliente(cod,nombre,q_compras) Values (14, 'Patricia',0) o
  • 42. Delete: sintaxis Delete From <tabla> [ Where <condición> ] Es la sentencia utilizada para eliminar filas de una tabla .
  • 43. Delete: sintaxis Delete From Empleado Si no se especifica una condición Where, se eliminarán todas las filas de la tabla (usar con cuidado)
  • 44. Delete: sintaxis Delete From Empleado Una buena práctica es, antes de ejecutar una sentencia Delete, cambiar la palabar Delete por Select *. De esta forma, podemos preveer qué filas se van a eliminar. Select * From Empleado
  • 45. Delete: sintaxis Delete From Empleado Where Empleado = 11 La cláusula Where de la sentencia Delete tiene la misma sintaxis que en la sentencia Select . Select * From Empleado Where Empleado = 11
  • 46. Delete: Ejercicio Delete From Compra Where fec_uc < '01/01/2005' And q_compras <= 5 q_compras : cantidad de compras que hizo un cliente. fec_uc : fecha de última compra Eliminar de la tabla todos los clientes que no hayan realizado ninguna compra entre el 1 de enero de 2005 y hoy, salvo aquellos que hayan realizado más de 5 compras.
  • 47. Update: sintaxis Update <tabla> Set col 1 = valor 1 , col 2 = valor 2 , ... col N = valor N [ Where <condición> ] Es la sentencia utilizada para actualizar filas de una tabla . No es necesario indicar valores para todas las columnas de la tabla; basta con aquellas que se quieren actualizar.
  • 48. Update Update Compra Set cant = NULL Si no se incluye una cláusula Where, se actualizan todas las filas de la tabla
  • 49. Update Update Compra Set cant = NULL Where cod = 4 Con una cláusula Where, es posible modificar solamente algunas filas
  • 50. Update Update Compra Set total = total * 2 El valor a colocar puede depender del valor anterior.
  • 51. Update Update Compra Set cant = NULL, total = total * 2 Where cod = 4 Puede actualizarse el valor de más de una columna simultáneamente.
  • 52. Update: Ejercicio Update Compra Set fec_uc = ‘03/08/07', q_compras = q_compras + 1 Where cod = 13 q_compras : cantidad de compras que hizo un cliente. fec_uc : fecha de última compra Supongamos que el cliente 13 ( Claudia ) realiza hoy, 3 de agosto de 2007, una compra. Actualizar la tabla Cliente .