10 - IPI - Consultas a Una BD - Funciones
-
Upload
erfolg-villegas-marco -
Category
Documents
-
view
216 -
download
0
Transcript of 10 - IPI - Consultas a Una BD - Funciones
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
1/42
INFORMTICA PARA INGENIEROSIngeniera Empresarial
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
2/42
CONSULTAS A UN BD USO DE FUNCIONES
Semana 10
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
3/42
QU ES MS IMPORTANTE DAR O RECUPERAR?
Cuando se trata de basesde datos, lo ms probablees que tendr querecuperar sus datos con lamisma frecuencia que senecesita para insertardatos.
Ah es donde entra enjuego esta clase,aprendiendo la poderosa
declaracin SELECT ycmo acceder a esaimportante informacinalmacenada en las BDs.
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
4/42
QU SABEMOS HASTA AHORA DE SQL?
Qu es DDL?
Qu es DML?
Qu tipo de
instrucciones permitencrear una tabal y una
BD?
Qu es SQL?
Cul es la utilidad dellenguaje SQL?
http://www.google.com.pe/url?sa=i&rct=j&q=&esrc=s&frm=1&source=images&cd=&cad=rja&docid=b8dycXpRLwJJ5M&tbnid=wRyVrZxmfz226M:&ved=0CAUQjRw&url=http://www.troglod.com/sql-cambiar-un-campo-de-forma-masiva/&ei=xJ51Uba_IOz64AOwrIDIBA&bvm=bv.45512109,d.dmg&psig=AFQjCNHQzgXkPuc3VQQIn9vO4htvY6ubKw&ust=1366749238508246http://www.google.com.pe/url?sa=i&rct=j&q=&esrc=s&frm=1&source=images&cd=&cad=rja&docid=b8dycXpRLwJJ5M&tbnid=wRyVrZxmfz226M:&ved=0CAUQjRw&url=http://www.troglod.com/sql-cambiar-un-campo-de-forma-masiva/&ei=xJ51Uba_IOz64AOwrIDIBA&bvm=bv.45512109,d.dmg&psig=AFQjCNHQzgXkPuc3VQQIn9vO4htvY6ubKw&ust=1366749238508246 -
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
5/42
QU PASARA SI
Tenemos que encontrar
los registros de la tabla
productos que empiezan
por la letra C y que
pertenecen a la categoracondimentos
Cmo lo resolvemos?
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
6/42
LOGRO ESPERADO
Al trmino de la sesin, el
estudiante elabora un
documento describiendo
cada uno de los puntos
tratados, acompaado desu respectivo ejemplo,
para recuperar datos de
una BD, incluyendo los
ejercicios propuestos.
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
7/42
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
8/42
SQL
Las sentencias SQL siguen este patrn:
Empiezan por un verbo que indica la accin a realizar,
completado por el objeto sobre el cual queremos realizar la
accin,
seguido de una serie de clusulas (unas obligatorias, otrasopcionales) que completan la frase, y proporcionan ms detalles
acerca de lo que se quiere hacer.
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
9/42
SQL
DDL: verbos bsicos
CREATE (Crear)
DROP (Eliminar)
ALTER (Modificar)
DML: verbos bsicos
INSERT (Crear, es decir, insertar una
nueva fila de datos)
DELETE (Eliminar filas de datos)
UPDATE (Modificar filas de datos) SELECT (Seleccionar, obtener)
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
10/42
AGENDA
1. Recuperar datos de
tablas mediante la
instruccin SELECT
2. Filtrar los datos
3. Dar formato a los
conjuntos de resultados
4. Cmo se procesan las
consultas
5. Consideraciones acerca
del rendimiento
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
11/42
1. RECUPERACIN DE DATOS: INSTRUCCIN SELECT
Uso de la instruccin
SELECT
Especificacin de
columnas
Uso de la clusula
WHERE para especificar
filas
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
12/42
SELECT [ALL | DISTINCT]
FROM [,n]WHERE
Sintaxis parcial
USO DE LA INSTRUCCIN SELECT
La lista de seleccin especifica las columnas
La clusula WHERE especifica las condiciones de
restriccin de la consulta
La clusula FROM especifica la tabla
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
13/42
USO DE LA INSTRUCCIN SELECT
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
14/42
ESPECIFICACIN DE COLUMNAS
employeeid lastname firstname title
1 Davolio Nancy Sales Representative
2 Fuller Andrew Vice President, Sales
3 Leverling Janet Sales Representative
4 Peacock Margaret Sales Representative
5 Buchanan Steven Sales Manager
6 Suyama Michael Sales Representative
7 King Robert Sales Representative
8 Callahan Laura Inside Sales Coordinator
9 Dodsworth Anne Sales Representative
USE northwind
SELECT employeeid, lastname, firstname, titleFROM employeesGO
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
15/42
ESPECIFICACIN DE COLUMNAS
Para la tabla producto mostrar su id,
nombre, precio unitario, unidades en stock,su punto de reposicin.
Para la tabla categora mostrar su id,nombre y descripcin.
De la tabla proveedores obtener su id,nombre de la compaa, ciudad, regin ypas.
De la tabla clientes mostrar su id, nombrede la compaa, ttulo del contacto, nombredel contacto, ciudad, regin y pas.
Mostar id, ttulo de cortesa, nombre,apellido, fecha de nacimiento, notas de latabla empleado
Mostrar el id y nombre de compaa de latabla transportistas
Mostrar el id y la descripcin de la tablaregin
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
16/42
USO DE LA CLUSULA WHERE PARA ESPECIFICAR FILAS
employeeid lastname firstname title
5 Buchanan Steven Sales Manager
USE northwindSELECT employeeid, lastname, firstname, titleFROM employeesWHERE employeeid = 5
GO
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
17/42
USO DE LA CLUSULA WHERE PARA ESPECIFICAR FILAS
Para la tabla producto mostrar su id,nombre, precio unitario, unidades enstock que estn descontinuados.
Mostar id, ttulo de cortesa, nombre,apellido, fecha de nacimiento, notas dela tabla empleado cuya fecha de contrato
sea 1993/10/17 De la tabla proveedores obtener su id,
nombre de la compaa, ciudad, regin ypas cuyo pas sea USA
De la tabla clientes mostrar su id,nombre de la compaa, ttulo del
contacto, nombre del contacto, ciudad,regin y pas y cuyo cdigo postal es1010
Para la tabla producto mostrar su id,nombre, precio unitario, unidades enstock que pertenecen a la categora 6.
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
18/42
AGENDA
1. Recuperar datos de
tablas mediante la
instruccin SELECT
2. Filtrar los datos
3. Dar formato a los
conjuntos de resultados
4. Cmo se procesan las
consultas
5. Consideraciones acerca
del rendimiento
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
19/42
2. FILTROS DE DATOS
Uso de los operadores de
comparacin
Uso de comparaciones de
cadenas
Uso de operadores lgicos
Obtencin de un intervalo
de valores
Uso de una lista de valores
como criterio de bsqueda Obtencin de valores
desconocidos
A veces se desea limitarel conjunto de
resultados que
devuelve una consulta.
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
20/42
USO DE LOS OPERADORES DE COMPARACIN
USE northwindSELECT lastname, cityFROM employeesWHERE country = 'USA'
GO
lastname city
Davolio Seattle
Fuller Tacoma
Leverling Kirkland
Peacock Redmond
Callahan Seattle
Ejemplo 1
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
21/42
USO DE COMPARACIONES DE CADENAS
USE northwindSELECT companynameFROM customersWHERE companyname LIKE '%Restaurant%'GO
companyname
GROSELLA-Restaurante
Lonesome Pine Restaurant
Tortuga Restaurante
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
22/42
USO DE OPERADORES LGICOS
USE northwindSELECT productid, productname, supplierid, unitpriceFROM productsWHERE (productname LIKE 'T%' OR productid = 46)
AND (unitprice > 16.00)GO
productid productname supplierid unitprice
14 Tofu 6 23.25
29 Thringer Rostbratwurst 12 123.79
62 Tarte au sucre 29 49.3
Ejemplo 1
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
23/42
OBTENCIN DE UN INTERVALO DE VALORES
USE northwindSELECT productname, unitpriceFROM productsWHERE unitprice BETWEEN 10 AND 20GO
productname unitprice
Chai 18
Chang 19
Aniseed Syrup 10Genen Shouyu 15.5
Pavlova 17.45
Sir Rodney's Scones 10
Ejemplo 1
USO DE UNA LISTA DE VALORES COMO CRITERIO DE
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
24/42
USE northwindSELECT companyname, countryFROM suppliersWHERE country IN ('Japan', 'Italy')
GO
USO DE UNA LISTA DE VALORES COMO CRITERIO DEBSQUEDA
companyname country
Tokyo Traders Japan
Mayumi's Japan
Formaggi Fortini s.r.l. Italy
Pasta Buttini s.r.l. Italy
Ejemplo 1
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
25/42
OBTENCIN DE VALORES DESCONOCIDOS
USE northwindSELECT companyname, faxFROM suppliersWHERE fax IS NULLGO
companyname fax
Exotic Liquids NULL
New Orleans Cajun Delights NULL
Tokyo Traders NULL
Cooperativa de Quesos 'Las Cabras' NULL
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
26/42
AGENDA
1. Recuperar datos de
tablas mediante la
instruccin SELECT
2. Filtrar los datos
3. Dar formato a los
conjuntos de resultados
4. Cmo se procesan las
consultas
5. Consideraciones acerca
del rendimiento
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
27/42
3. DAR FORMATO A LOS CONJUNTOS DE RESULTADOS
Ordenacin de los datos
Eliminacin de filas
duplicadas
Cambio del nombre de
las columnas
Uso de literales
http://www.google.com.pe/url?sa=i&rct=j&q=&esrc=s&frm=1&source=images&cd=&cad=rja&docid=bcBUiIfo1pNpMM&tbnid=SWxEAzJDTK1ygM:&ved=0CAUQjRw&url=http://elcomercio.pe/economia/1562320/noticia-bolsas-asiaticas-culminan-operaciones-verde-buenos-datos-china&ei=svh1UareG4XK4APU8oCwBw&psig=AFQjCNGrk5pE75LmXuUGFIx5IeDPdK3VBw&ust=1366772251276060http://www.google.com.pe/url?sa=i&rct=j&q=&esrc=s&frm=1&source=images&cd=&cad=rja&docid=bcBUiIfo1pNpMM&tbnid=SWxEAzJDTK1ygM:&ved=0CAUQjRw&url=http://elcomercio.pe/economia/1562320/noticia-bolsas-asiaticas-culminan-operaciones-verde-buenos-datos-china&ei=svh1UareG4XK4APU8oCwBw&psig=AFQjCNGrk5pE75LmXuUGFIx5IeDPdK3VBw&ust=1366772251276060 -
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
28/42
ORDENACIN DE LOS DATOS
USE northwindSELECT productid, productname, categoryid, unitpriceFROM productsORDER BY categoryid, unitprice DESCGO
productid productname categoryid unitprice
38 Cte de Blaye 1 263.5000
43 Ipoh Coffee 1 46.0000
2 Chang 1 19.0000
63 Vegie-spread 2 43.9000
8 Northwoods Cranberry Sauce 2 40.0000
61 Sirop d'rable 2 28.5000
Ejemplo 1
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
29/42
ELIMINACIN DE FILAS DUPLICADAS
USE northwindSELECT DISTINCT country
FROM suppliersORDER BY countryGO
country
AustraliaBrazil
Canada
Denmark
Finland
FranceGermany
Italy
Japan
Netherlands
NorwaySingapore
Spain
Sweden
UK
USA
Ejemplo 1
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
30/42
CAMBIO DEL NOMBRE DE LAS COLUMNAS
USE northwind
SELECT firstname AS First, lastname AS Last,employeeid AS 'Employee ID:'
FROM employeesGO
First Last Employee ID:
Nancy Davolio 1
Andrew Fuller 2
Janet Leverling 3
Margaret Peacock 4Steven Buchanan 5
Michael Suyama 6
Robert King 7
Laura Callahan 8
Anne Dodsworth 9
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
31/42
USO DE LITERALES
USE northwindSELECT firstname, lastname,
'Nmero de identificacin:', employeeidFROM employeesGO
First Last Employee ID:
Nancy Davolio Nmero de identificacin: 1
Andrew Fuller
Janet Leverling
Margaret PeacockSteven Buchanan
Michael Suyama
Robert King
Laura Callahan
Anne Dodsworth
Nmero de identificacin: 2
Nmero de identificacin: 3
Nmero de identificacin: 4Nmero de identificacin: 5
Nmero de identificacin: 6
Nmero de identificacin: 7
Nmero de identificacin: 8
Nmero de identificacin: 9
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
32/42
AGENDA
1. Recuperar datos de
tablas mediante la
instruccin SELECT
2. Filtrar los datos
3. Dar formato a los
conjuntos de resultados
4. Cmo se procesan las
consultas
5. Consideraciones acerca
del rendimiento
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
33/42
4. CMO SE PROCESAN LAS CONSULTAS
Consultas no almacenadas en cach (ad hoc)
Consultas almacenadas en cach
EjecutarCompilarOptimizarResolverAnalizar
Primera ejecucin
EjecutarCompilarOptimizarResolverAnalizar
Ejecucin posterior EjecutarProcedimiento
en cach
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
34/42
5. CONSIDERACIONES ACERCA DEL RENDIMIENTO
Las condiciones debsqueda negativaspueden hacer que larecuperacin de datos seams lenta
La obtencin de datos conLIKE puede resultar mslenta
Las coincidencias exactas ointervalos hacen que laobtencin de datos sea ms
rpida La clusula ORDER BY
puede ralentizar laobtencin de datos
http://www.google.com.pe/url?sa=i&rct=j&q=&esrc=s&frm=1&source=images&cd=&cad=rja&docid=upAsxkIS8tMnlM&tbnid=DwYdWdpU7gknAM:&ved=0CAUQjRw&url=http://upgraderevista.com/2012/11/26/marcas-del-deporte/&ei=bgJ2UebeCqnh0gGJzYHQCw&psig=AFQjCNHsJKUzacbIVkgPkO7sXWQxg2tqpA&ust=1366774692896672http://www.google.com.pe/url?sa=i&rct=j&q=&esrc=s&frm=1&source=images&cd=&cad=rja&docid=upAsxkIS8tMnlM&tbnid=DwYdWdpU7gknAM:&ved=0CAUQjRw&url=http://upgraderevista.com/2012/11/26/marcas-del-deporte/&ei=bgJ2UebeCqnh0gGJzYHQCw&psig=AFQjCNHsJKUzacbIVkgPkO7sXWQxg2tqpA&ust=1366774692896672 -
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
35/42
REPASO
Recuperar datos de tablas mediante la instruccin
SELECT
Filtros de datos
Dar formato a los conjuntos de resultados
Cmo se procesan las consultas
Consideraciones acerca del rendimiento
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
36/42
RECORDANDO LA APRENDIDO
Las consultas son preguntas que le hacemos a un BD
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
37/42
PREGUNTAS DE REPASO
Ejemplos de instrucciones DDL Ejemplo de instrucciones DML
Para qu nos sirve cada una de lassiguientes clusulas: SELECT,WHERE, FROM
Funcionalidad del *
Cmo devuelvo los 10 primeroselementos de una tabla?
De qu manera podemos mostraruna fila especfica de una tabla?
Cules son los operadores decomparacin?
Operador que permite comparar
cadenas Cules son los operadoreslgicos?
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
38/42
PREGUNTAS DE REPASO
Operador lgico de negacin Permite mostrar Intervalo
de valores
Cundo utilizamos lasinstruciones IN, NOT IN?
Cmo mostramos valoresdesconocidos ?
Instruccin que permiteordenar los datos
Elimina las filas duplicadasen el conjunto de resultados
Permite cambiar losnombres de las columnas porliterales para mejorar lalegibilidad de los conjuntos deresultados
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
39/42
EJERCICIOS DE APLICACIN
Trabajemos!
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
40/42
PRACTICANDO LO APRENDIDOUsando lo que aprendiste la clase anterior, cree la tabla de esta pgina e introduzca los
datos que se muestran. Esta tabla es parte de una base de datos denominada drinks
(bebidas) contiene las recetas para una serie de bebidas que tienen slo dos ingredientes.
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
41/42
OBTENIENDO INFORMACIN DE UNA TABLA!
Use la tabla
easy_drinks que acaba
de crear y escriba las
bebidas que resultan de
cada consulta
-
7/26/2019 10 - IPI - Consultas a Una BD - Funciones
42/42
CONSULTANDO NORTHWIND
Mostrar todos los productos,
cuyo nombre comienzan conM y tienen un preciocomprendido entre 10 y 100.
Mostrar los clientes de USA yFrancia
Obtener todas las rdenes
hechas por el empleado concdigo: 3, 5 y 7.
Listar los empleados que tienecomo jefe al empleado concdigo 5.
Seleccionar todos los camposdel cliente, cuya compaaempiece con la letra M ypertenezcan al pas de USA.
De la tabla productos mostrarlos productos descontinuadoso con stock cero.