La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

SQL: structured Query Language

Presentaciones similares


Presentación del tema: "SQL: structured Query Language"— Transcripción de la presentación:

1 SQL: structured Query Language
Paul Leger

2 El siguiente material es muy bueno para aprender SQL

3 SQL Un lenguaje para interactuar con base de datos a través de motores de base de datos Un lenguaje de dominio especifico (DSL) Es posible insertar, consultar, borrar y modificar datos Es posible crear, borrar, modificar (alterar) esquemas de una base de datos

4 Traducción del AR a SQL AR lenguaje conceptual/teórico
SQL lenguaje concreto (¡SQL No es el único!, ej. QBE, SchemeQL)

5 SQL2: Extensión de SQL SQL intenta ser una implementación concreta de Algebra Relacional Algebra Relacional no incluye la creación de tablas, agregar registros SQL-92 (1992): Agrega estos y otros componentes Las última revisión fue sacada SQL-2008

6 ADVERTENCIA: ¡Cada motor tienen sus versiones de SQL con sutiles diferencias!

7 Crear Tablas (DDL) CREATE TABLE Arrendatario( RUT_A INTEGER NOT NULL,
Nombre VARCHAR(255), Apellido VARCHAR(255), PRIMARY KEY (RUT_A)) CREATE TABLE Casa( RUT INTEGER NOT NULL, Id_casa INTEGER NOT NULL, Numero INTEGER, Calle VARCHAR(255), Comuna VARCHAR(255), PRIMARY KEY (Id_casa), //pueden agregar otros campos FOREIGN KEY(RUT) REFERENCES Dueno (RUT_D)) //referencia a otra tabla con un campo

8 ¡NOTA: Hay muchas maneras para crear tablas!
Luego veremos esas

9 Insertar datos INSERT INTO nombre_tabla(atributo_1,...,atributo_n) VALUES (dato_1,...,dato_n) Insert into Dueno values(123,»Paul»,»Leger») NOTA: Si se insertan los datos en el orden que se encuentran definidos en la tablas, se pueden omitir la declaración de campos NOTA: Si hay campos que pueden ser nulos u pueden tener valores por defecto y uno no desea insertarlos, entonces debe explícitamente escribir que campos vamos a utilizar

10 Proyección / Select SELECT [distinct] [campos,*] from [TABLE]
Ejemplos: Select * from Dueno Select Nombre, Apellido from Dueno Select distinct Nombre from Dueno

11 Renombrar Una relación: Un Atributo:
Select D.Rut_D From Dueno as D Un Atributo: Select Rut_D as Rut From Dueno Relación con sus campos (¡¡No siempre soportado!!): Select Rut From Dueno AS D(Rut, Nombre, Apellido)

12 Selección Se «where» para llevar a cabo la operación de selección
Select * from Dueno where Nombre = «Homero» NOTA: Es sensible a mayúsculas. Por ejemplo, «Homero» es diferente a «homero» Select Rut_D as Rut, nombre as prenom from dueno where prenom=«Homero» NOTA: puedes usar «prenom» o «nombre» en la consulta Select * from Arrienda where deuda > 0 Nota 1: puede user operadores de comparación (ej. or, and) Nota 2: «<>» es para distinto «!=«

13 Producto Cartesiano Select * from Arrienda, Casa
Select * from Arrienda, Casa where Casa.id_casa = Arrienda.id_casa Select * from Arrienda As A, Casa as C where C.id_casa = A.id_casa

14 Natural Join Es similar al natural join visto en clases
Select * from Dueno Natural Join Casa Select * from Dueno Natural Join Casa where numero = 409

15 ¡Quedan otros!


Descargar ppt "SQL: structured Query Language"

Presentaciones similares


Anuncios Google