SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado –...

35
SQL

Transcript of SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado –...

Page 1: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Page 2: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

¿Qué es SQL?

SQL– Structured Query Language– Lenguaje de consulta estructurado– “Órdenes” SQL

Lenguaje de acceso a bases de datos relacionales Es un estándar para sistemas de gestión de bases de

datos relacionales– Oracle, Sybase, Microsoft SQL Server, Access, Ingres, …– “Extensiones propietarias”

Page 3: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Clasificación de sentencias SQL

DDL (Data Description Language)– Órdenes para definir, modificar o borrar tablas y relaciones

entre ellas

DCL (Data Control Language)– Elementos para trabajar en entorno multiusuario donde es

importante la protección de datos, seguridad, restricciones de acceso, compartición e integridad de datos

DML (Data Manipulation Language)– Recuperación de datos, actualización de datos (añadir,

suprimir o modificar)

Page 4: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Sintaxis

Verbo + cláusulas (obligatorias y opcionales) DIAGRAMA SINTÁCTICO

Ejemplos válidosSELECT ALL col1,col2,col3 FROM mitabla;SELECT col1,col2,col3 FROM mitabla;SELECT DISTINCT col1 FROM mitabla;SELECT col1,col2 FROM mitabla WHERE col2=0

Page 5: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

select

La orden select se usa para consultar la base de datos y recuperar datos que cumplan el criterio que se especifique

Formato:– Select “column1”[,”column2”,etc] from “tablename” [where “condition”]

– Condiciones que se pueden usar: =, >, <, >=, <=, <> LIKE

– Ejemplo: select nombre, apellido, ciudad from listado where nombre LIKE ‘Je%’;

– % es un comodín que significa “cualquier carácter”– Más ejemplos:

select nombre, apellido from listado where apellido LIKE ‘%s’; select * from listado where nombre=‘Jesús’;

Columnas que se devolverán en los resultados“*” implica Todas

Page 6: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Ejercicio

Tabla empinfo Primero averiguar el resultado y luego ejecutarlo

– select nombre, apellido, ciudad from empinfo; – select apellido, ciudad, edad from empinfo where edad > 30; – select nombre, apellido, ciudad, pais from empinfo where nombre LIKE 'J%'; – select * from empinfo; – select nombre, apellido from empinfo where apellido LIKE '%z'; – select nombre, apellido, edad from empinfo where apellido LIKE '%áre%'; – select * from empinfo where nombre = 'Enrique';

nombre apellido id edad ciudad paisJuan Juárez 99980 45 Palencia EspañaMaría Juárez 99982 25 Palencia EspañaEnrique Esteban 88232 32 Oporto PortugalMaría Antonia Esteban 88233 32 Pontevedra EspañaBeatriz Hernández 98002 42 Córdoba EspañaSebastián Suárez 92001 23 Guadalajara EspañaGustavo García 22322 35 Badajoz EspañaMaría Antonia Martínez 32326 52 Toledo EspañaErica Zamora 32327 60 Santander EspañaLeandro Boada 32380 22 Peñafiel EspañaErnesto Clavel 32382 22 Gandía España

Page 7: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Ejercicios

Escribir órdenes select para:1. Mostrar el nombre y la edad de todos los de la tabla

2. Mostrar el nombre, apellido y ciudad de todos los que no son de Palencia

3. Mostrar todas las columnas para todos los que son mayores de 40 años

4. Mostrar el nombre y apellido de todos cuyo apellido termina en “a”

5. Mostrar todas las columnas para todos los que su nombre es igual a “María”

6. Mostrar todas las columnas para todos los que su nombre contiene “María”

nombre apellido id edad ciudad paisJuan Juárez 99980 45 Palencia EspañaMaría Juárez 99982 25 Palencia EspañaEnrique Esteban 88232 32 Oporto PortugalMaría Antonia Esteban 88233 32 Pontevedra EspañaBeatriz Hernández 98002 42 Córdoba EspañaSebastián Suárez 92001 23 Guadalajara EspañaGustavo García 22322 35 Badajoz EspañaMaría Antonia Martínez 32326 52 Toledo EspañaErica Zamora 32327 60 Santander EspañaLeandro Boada 32380 22 Peñafiel EspañaErnesto Clavel 32382 22 Gandía España

Page 8: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Creación de tablas

Qué campos la forman De qué tipo van a ser (entero, cadena, fecha, etc)

– VARCHAR(NMaxChar) Cadena de 1 a NMaxChar caracteres. NMaxChar entre 1 y 255

– CHAR(NMaxChar) Siempre ocupa NMaxChar caracteres en memoria

– Las cadenas se escriben entre comillas ‘simples’– INTEGER

Entero de 32 bits– SMALLINT

Entero de 16 bits– NUMERIC(x,y) o NUMBER(x,y)

Número real con ‘x’ dígitos, ‘y’ de las cuales son decimales– DATE

Fecha– TIME

Hora– TIMESTAMP

Fecha & Hora

Restricciones (no nulo, por ejemplo)

Page 9: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

create table

La orden create table se usa para crear una nueva tabla Formato:

– create table “tablename” (“column1” “data type” [constraint], “column2” “data type” [constraint], “column3” “data type” [constraint]);

– Ejemplo: create table empleado (nombre varchar(15), apellido varchar(20), edad

number(3), direccion varchar(30), ciudad varchar(20), pais varchar(20)); Restricciones (constraints)

– Regla asociada con una columna cuyos datos deben seguir “unique”: No puede haber dos registros con el mismo valor para esa

columna “not null”: No puede dejarse vacía esa columna “primary key”: Define una identificación única para cada registro

Ejercicio– Crear una tabla de empleados con: nombre, apellido, categoría, edad

y salario

Page 10: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

insert

La orden insert se usa para insertar o añadir una fila de datos en la tabla

Formato:– insert into “tablename” (first_column, …, last_column) values

(first_value, …, last_value);– Ejemplo:

insert into empleado (nombre, apellido, edad, direccion, ciudad, pais) values (‘Juan’, ‘García’, 45, ‘c/ Soto, 12’, ‘Valladolid’, ‘España’);

Page 11: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Ejercicio

Inserta en la tabla de empleados los siguientes 3 y otros 3 más inventados por ti:– Juana García, Secretaria, 28, 19500.00– Pablo García, Programador, 32, 45300.00– Daniel Alvarez, Programador II, 45, 75020.00

Después de insertarlos, escribe órdenes select para lo siguiente:1. Selecciona todas las columnas para todos los empleados de la tabla2. Selecciona todas las columnas para todos los que tengan un salario mayor

de 300003. Selecciona nombre y apellido para todos los que tengan menos de 30 años4. Selecciona nombre, apellido y salario para todos los que tengan la categoría

de “Programador” 5. Selecciona todas las columnas para todos los que su apellido contenga “ar”6. Selecciona el nombre para todos los que su nombre sea igual a “Pablo” 7. Selecciona todas las columnas para todos los que tengan más de 80 años8. Selecciona todas las columnas para todos los que su apellido termine en “ez”

Page 12: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

update

La orden update se usa para actualizar o cambiar registros que cumplen un determinado criterio

Formato:– update “tablename” set “columname”=“newvalue”

[,”nextcolumn”=“newvalue2”…] where “columname” OPERATOR “value” [and|or “column” OPERATOR “value”];

– Ejemplos: update agenda set codigo_postal=47 where prefijo=983; update agenda set apellido=‘García’, prefijo=983 where

apellido=‘Rodríguez’; update empleado set edad=edad+1 where nombre=‘María’ and

apellido=‘Pérez’;

Page 13: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Ejercicio

Después de cada update, ejecuta un select para verificar los cambios

Realiza:1. Juana García se acaba de casar con Benito González. Ella ha

solicitado que se cambie su apellido por González2. El cumpleaños de Daniel Alvarez es hoy; añade 1 a su edad3. Todas las secretarias pasan a llamarse ahora “Asistente

administrativo”4. Todos los que ganan por debajo de 30000 reciben un incremento

anual de 35005. Todos los que ganan por encima de 33500 reciben un incremento

anual de 45006. Todos los de la categoría “Programador II” son promocionados a

“Programador III”7. Todos los de la categoría “Programador” son promocionados a

“Programador II”

Page 14: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

delete

La orden delete se usa para borrar registros (o filas) de una tabla

Formato:– delete from “tablename” where “columname” OPERATOR

“value” [and|or “column” OPERATOR “value”];– Ejemplos:

delete from empleado; ¡Se borran todos los registros! delete from empleado where apellido=‘Pérez’; delete from empleado where nombre=‘Juan’ or nombre=‘Luis’;

Page 15: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Ejercicios

Usa el comando select para verificar las operaciones de borrado

Realiza estos 2, y después, un borrado de todos los registros de la tabla1. Juana González ha cesado; elimina su registro de la tabla

2. Época de recorte de presupuesto. Elimina todos los empleados que están ganando más de 70000

Page 16: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

drop table

La orden drop table se usa para borrar una tabla y todas las filas de la tabla

Formato:– drop table “tablename”– ejemplo:

drop table empleado;

¡Se borra la definición de la tabla!

Page 17: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

select avanzado

select [all | distinct] column1[,column2] from table1[,table2] [where “conditions”] [group by “column-list”] [having “conditions”] [order by “column-list” [asc | desc] ];

Por defecto es ALL. DISTINCT descarta registros duplicados para las columnas que se especifiquen

Ejemplo:– SELECT DISTINCT edad FROM empinfo; devuelve las

edades “únicas” de la tabla

Page 18: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Tablas para ejercicios

clientes

pedidos

clienteid nombre apellido ciudad provincia10101 Juan García Lugo Lugo10298 Leandro Boada Palencia Palencia10299 Ernesto Calvo Santander Santander10315 Lucía Juárez Oviedo Oviedo10325 Bárbara Suárez Pontevedra Pontevedra10329 Carmen Mendoza Calatayud Zaragoza10330 Sancho Aragón Cuenca Cuenca10338 Miguel Hernández Teruel Teruel10339 Antonio Sánchez Pinto Madrid10408 Enrique Clavel Gandía Valencia10410 María Antonia Hernández Cuenca Cuenca10413 Eduardo Aznar Madrid Madrid10419 Linda Sevilla Villalba Madrid10429 Sara García Sevilla Sevilla10438 Clemente García Durango Vizcaya10439 Conrado Martín Bilbao Vizcaya10449 Isabel Martín Madrid Madrid

clienteid fecha item cantidad precio10330 30-jun-1999 Palo de golf 1 28.0010101 30-jun-1999 Balsa 1 58.0010298 1-jul-1999 Monopatín 1 33.0010101 1-jul-1999 Chaleco salvavidas 4 125.0010299 6-jul-1999 Paracaídas 1 1250.0010339 27-jul-1999 Paraguas 1 4.5010449 13-ago-1999 Monociclo 1 180.7910439 14-ago-1999 Palos de esquí 2 25.5010101 18-ago-1999 Impermeable 1 18.3010449 1-sep-1999 Botas para nieve 1 45.0010439 18-sep-1999 Tienda 1 88.0010298 19-sep-1999 Linterna 2 29.0010410 28-oct-1999 Saco de dormir 1 89.2210438 2-nov-1999 Almohada 1 8.5010298 1-dic-1999 Casco 1 22.0010449 15-dic-1999 Bicicleta 1 380.5010101 30-dic-1999 Hoola Hoop 3 14.7510330 1-ene-2000 Linterna flash 4 28.0010101 2-ene-2000 Linterna 1 16.0010299 18-ene-2000 Colchón hinchable 1 38.0010438 18-ene-2000 Tienda 1 79.9910413 19-ene-2000 Tumbona 4 32.0010410 30-ene-2000 Monociclo 1 192.5010315 2-feb-2000 Compás 1 8.0010449 29-feb-2000 Linterna flash 1 4.5010101 8-mar-2000 Saco de dormir 2 88.7010298 18-mar-2000 Navaja 1 22.3810449 19-mar-2000 Remo 2 40.0010298 1-abr-2000 Orejeras 1 12.5010330 19-abr-2000 Pala 1 16.75

Page 19: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Ejercicios de repaso

1. De la tabla pedidos, selecciona una lista de todos los items comprados por el clienteid 10449. Muestra el clienteid, item, y precio

2. Selecciona todas las columnas de la tabla pedidos para cualquiera que haya comprado una Tienda

3. Selecciona el clienteid, fecha e item de la tabla pedidos para cualquier item que empiece por la letra “P”

4. Selecciona items distintos de la tabla pedidos.

5. Realiza tus propias órdenes select y ejecútalas

Page 20: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Funciones de agregación

Devuelven información de una columna– MIN: valor más pequeño de una columna– MAX: valor más grande de una columna– SUM: suma de los valores numéricos de una columna– AVG: media de una columna– COUNT: número total de valores de una columna– COUNT(*): número de filas de una tabla

Ejemplos:– select avg(salario) from empleado;– select avg(salario) from empleado where

categoria=‘Programador’– select count(*) from empleado;

Page 21: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Ejercicios

1. Selecciona el precio máximo de cualquier item de la tabla pedidos

2. Selecciona el precio medio de los items que fueron comprados en el mes de diciembre

3. ¿Cual es el número total de filas de la tabla pedidos?

4. Para todas las tiendas de la tabla pedidos, ¿cual es el precio de la más barata?

Page 22: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Cláusula GROUP BY

La cláusula GROUP BY reúne todas las filas que contienen datos en las columnas especificadas y permite ejecutar funciones de agregación en una o más columnas

Formato ejemplo:– select column1,SUM(column2) from “list-of-tables” group by “column-

list” Ejemplo:

– SELECT max(salario), dept FROM empleados GROUP BY dept;– Lista de los salarios más altos de cada departamento– La salida serán los salarios y los departamentos correspondientes– SELECT cantidad, max(precio) FROM pedidos GROUP BY cantidad;

Page 23: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Ejercicios

1. ¿Cuántas personas hay de cada provincia en la tabla clientes? Muestra las provincias junto con el número de personas en cada uno

2. De la tabla pedidos, selecciona el item, precio máximo, y precio mínimo para cada item

3. ¿Cuántos pedidos hizo cada cliente? Usa la tabla pedidos. Selecciona el clienteid, número de pedidos que hicieron, y la suma de sus pedidos

Page 24: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Cláusula HAVING

Permite especificar condiciones para las filas de cada grupo. Va después de GROUP BY

Formato:– SELECT column1, SUM(column2) FROM "list-of-tables“

GROUP BY "column-list" HAVING "condition";– Ejemplo:

SELECT dept, avg(salario) FROM empleados GROUP BY dept HAVING avg(salario) > 20000;

Page 25: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Ejercicios

1. ¿Cuántas personas hay en cada provincia en la tabla clientes que tienen más de una persona en la provincia?

2. De la tabla pedidos, selecciona el item, precio máximo, y precio mínimo para cada item de la tabla. Muestra sólo los resultados si el precio máximo del item es mayor que 190

3. ¿Cuántos pedidos hizo cada cliente? Usa la tabla pedidos. Selecciona el clienteid, número de pedidos que hicieron, y la suma de sus pedidos si compraron más de 1 item

Page 26: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Cláusula ORDER BY

Permite ordenar los resultados de una consulta, ordenados por las columnas que se especifique

Por defecto es orden ascendente (ASC) Formato:

– SELECT column1, SUM(column2) FROM "list-of-tables“ ORDER BY "column-list" [ASC | DESC];

– Ejemplo: SELECT empleado_id, dept, nombre, edad, salario FROM

empleados WHERE dept = ‘Ventas' ORDER BY salario; SELECT empleado_id, dept, nombre, edad, salario FROM

empleados WHERE dept = 'Ventas' ORDER BY salario, edad DESC;

Page 27: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Ejercicios

1. Selecciona el apellido, nombre y ciudad de todos los clientes de la tabla clientes. Muestra los resultados en orden ascendente basado en el apellido

2. Lo mismo, pero en orden descendente

3. Selecciona el item y precio para cada uno de los items de la tabla pedidos en los que el precio sea mayor que 10. Muestra los resultados en orden ascendente basado en el precio

Page 28: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Ejercicios de repaso (combinando condiciones)

1. Selecciona el clienteid, fecha de pedido, e item de la tabla pedidos para todos los items excepto si son ‘Botas para nieve’ o ‘Orejeras’. Muestra dichas filas

2. Selecciona el item y el precio de todos los items que empiecen por las letras ‘S’, 'P', o ‘L'

Page 29: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Operador condicional IN

El operador IN se utiliza para comprobar si un valor está contenido en una lista de valores

Formato:– SELECT column1, SUM(column2) FROM "list-of-tables“

WHERE column3 IN (list-of-values);– Ejemplo:

SELECT empleadoid, apellido, salario FROM empleados WHERE apellido IN ('Hernandez', ‘Juárez', ‘González', 'Ruiz');

Se podría haber escrito con varios OR. Sería equivalente

Se puede utilizar NOT IN para excluir filas

Page 30: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Operador condicional BETWEEN

Se utiliza para comprobar si un valor está comprendido entre dos valores

Formato:– SELECT column1, SUM(column2) FROM "list-of-tables“

WHERE column3 BETWEEN value1 AND value2;– Ejemplo:

SELECT empleadoid, edad, apellido, salario FROM empleados WHERE edad BETWEEN 30 AND 40;

Se podría haber utilizado también <= y >=. Sería equivalente

También se puede utilizar NOT BETWEEN para excluir valores dentro de un rango

Page 31: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Ejercicios

1. Selecciona la fecha, item, y precio de la tabla pedidos para todas las filas que tengan un precio entre 10 y 80

2. Selecciona el nombre, ciudad, y provincia de la tabla clientes para todas las filas donde la provincia sea: Madrid, Vizcaya, Valencia, Palencia, o Zaragoza

Page 32: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Funciones matemáticas

El estándar ANSI SQL-92 soporta los siguientes operadores:– +, -, *, /, % (módulo)

Realmente, el operador módulo no está en el estándar, pero tanto él como las de la tabla suelen estar incluidas en la mayoría de los gestores de bases de datos

Ejemplo:– SELECT round(salario), nombre

FROM empleados Ejercicio:

1. Selecciona el item y el precio por unidad para cada item de la tabla pedidos

Page 33: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Uniones de tablas

Hasta ahora no se ha usado la potencia de las bases de datos relacionales, ya que sólo utilizábamos una única tabla. Las uniones nos permiten realizar consultas sobre dos o más tablas “relacionándolas”

Formato:– SELECT "list-of-columns" FROM table1,table2 WHERE

"search-condition(s)“– Ejemplo:

SELECT cliente_info.nombre, cliente_info.apellido, compras.item FROM cliente_info, compras WHERE cliente_info. cliente _numero = compras. cliente _ numero;

La columna común sirve para “unir” las tablas

Page 34: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

Ejercicios

1. Escribe una consulta usando una unión para determinar qué items fueron pedidos por cada cliente de la tabla clientes. Selecciona el clienteid, nombre, apellido, fecha de pedido, item, y precio de todo lo que compró cada cliente en la tabla pedidos

2. Repite lo anterior mostrando los resultados ordenados por provincia en orden descendente

Page 35: SQL. ¿Qué es SQL? SQL – Structured Query Language – Lenguaje de consulta estructurado – Órdenes SQL Lenguaje de acceso a bases de datos relacionales Es.

SQL

ODBC

Open DataBase Connectivity– Application Programming Interface (API)– Permite a un programador escribir un programa sin tener en

consideración el tipo particular de base de datos– El lenguaje ODBC es una combinación de llamadas a

funciones API de ODBC y el lenguaje SQL– Se necesita un driver ODBC específico para la base de datos

que se esté usando– En definitiva, es un mediador que facilita la programación de

una aplicación que utiliza datos contenidos en una base de datos