Download Base de datos - Lenguaje SQL

Document related concepts

SQL wikipedia , lookup

Lenguaje de manipulación de datos wikipedia , lookup

Null (SQL) wikipedia , lookup

Microsoft SQL Server wikipedia , lookup

Expresiones multidimensionales wikipedia , lookup

Transcript
Conceptos
Comandos SQL
Fin
Base de datos
Lenguaje SQL
Eduardo Saavedra A.
Universidad Nacional Andrés Bello
Eduardo Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Contenidos
1
2
Conceptos
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Comandos SQL
SELECT
Ejemplo SELECT
DISTINCT
Ejemplo Distinct
WHERE
Ejemplo WHERE - I
Ejemplo WHERE - II
ORDER BY
Ejemplo ORDER BY
TOP
Ejemplo Top - I
Ejemplo TopEduardo
- II Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Contenidos
1
2
Conceptos
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Comandos SQL
SELECT
Ejemplo SELECT
DISTINCT
Ejemplo Distinct
WHERE
Ejemplo WHERE - I
Ejemplo WHERE - II
ORDER BY
Ejemplo ORDER BY
TOP
Ejemplo Top - I
Ejemplo TopEduardo
- II Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Tablas en base de datos
Una base de datos usualmente contiene una o más tablas.
Cada tabla esta identificada por un nombre. Las tablas a
su vez contienen registros (filas o tuplas) con datos.
Aquí se tiene una tabla de ejemplo llamada persona:
Persona
ID
1
2
3
4
5
Apellido
Simpson
Fry
Griffin
Simpson
Flanders
Nombre
Homero
Phillip
Peter
Bart
Ned
Dirección
Siempreviva 72
Futuro
Spooner Street 725
Siempreviva 72
Siempreviva 70
Ciudad
Springfield
Nueva Nueva York
Quahog
Springfield
Springfield
La tabla contiene 5 tuplas (una para cada persona) y 5
columnas
Eduardo Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Contenidos
1
2
Conceptos
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Comandos SQL
SELECT
Ejemplo SELECT
DISTINCT
Ejemplo Distinct
WHERE
Ejemplo WHERE - I
Ejemplo WHERE - II
ORDER BY
Ejemplo ORDER BY
TOP
Ejemplo Top - I
Ejemplo TopEduardo
- II Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Declaraciones SQL
La mayor parte de las acciones e interacciones que se
hacen con una base de datos se hacen con declaraciones
SQL.
El siguiente SQL selecciona todos las tuplas de la tabla
Persona:
SQL
SELECT * FROM Persona
Esta es una de las consultas mas sencillas en SQL.
Eduardo Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Contenidos
1
2
Conceptos
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Comandos SQL
SELECT
Ejemplo SELECT
DISTINCT
Ejemplo Distinct
WHERE
Ejemplo WHERE - I
Ejemplo WHERE - II
ORDER BY
Ejemplo ORDER BY
TOP
Ejemplo Top - I
Ejemplo TopEduardo
- II Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
SQL DML y DLL
Como se ha visto con anterioridad los SQL se pueden
dividir en dos secciones:
DML:
SELECT - Extrae datos.
UPDATE - Actualiza datos.
DELETE - Elimina datos.
INSERT INTO - Agrega datos.
DDL:
CREATE DATABASE - Crea una BD.
ALTER DATABASE - Modifica una BD.
CREATE TABLE - Crea una nueva tabla.
ALTER TABLE - Modifica una tabla.
DROP TABLE - Elimina una tabla.
CREATE INDEX - Crea un índice (llave de búsqueda key).
DROP INDEX - Elimina un índice.
Eduardo Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Contenidos
1
2
Conceptos
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Comandos SQL
SELECT
Ejemplo SELECT
DISTINCT
Ejemplo Distinct
WHERE
Ejemplo WHERE - I
Ejemplo WHERE - II
ORDER BY
Ejemplo ORDER BY
TOP
Ejemplo Top - I
Ejemplo TopEduardo
- II Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Contenidos
1
2
Conceptos
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Comandos SQL
SELECT
Ejemplo SELECT
DISTINCT
Ejemplo Distinct
WHERE
Ejemplo WHERE - I
Ejemplo WHERE - II
ORDER BY
Ejemplo ORDER BY
TOP
Ejemplo Top - I
Ejemplo TopEduardo
- II Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Declaración Select
Esta declaración sirve para seleccionar datos de una tabla.
El resultado se almacena en una tabla resultado
(temporal).
Sintaxis de Select
SELECT nombre_columna(s)
FROM nombre_tabla
Otra forma:
Sintaxis de Select
SELECT *
FROM nombre_tabla
Eduardo Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Ejemplo Select
Si se quisiera ver los nombre y apellidos de la tabla
presentada
Uso de Select
SELECT Nombre, Apellido FROM Persona
Lo cual devolverá:
Result-set
Nombre
Homero
Phillip
Peter
Bart
Ned
Apellido
Simpson
Fry
Griffin
Simpson
Flanders
Eduardo Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Contenidos
1
2
Conceptos
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Comandos SQL
SELECT
Ejemplo SELECT
DISTINCT
Ejemplo Distinct
WHERE
Ejemplo WHERE - I
Ejemplo WHERE - II
ORDER BY
Ejemplo ORDER BY
TOP
Ejemplo Top - I
Ejemplo TopEduardo
- II Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Declaración Distinct
Esta declaración sirve para seleccionar datos distintos de
una tabla, se utiliza previo a una columna.
Sintaxis de Distinct
SELECT DISTINCT nombre_columna(s)
FROM nombre_tabla
Eduardo Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Ejemplo Distinct
Si se quisiera ver las distintas ciudades de la tabla antes
presentada, se tendría:
Uso de Distinct
SELECT DISTINCT Ciudad
FROM Persona
Lo cual devolverá:
Result-set
Ciudad
Springfield
Quahog
Nueva Nueva York
Eduardo Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Contenidos
1
2
Conceptos
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Comandos SQL
SELECT
Ejemplo SELECT
DISTINCT
Ejemplo Distinct
WHERE
Ejemplo WHERE - I
Ejemplo WHERE - II
ORDER BY
Ejemplo ORDER BY
TOP
Ejemplo Top - I
Ejemplo TopEduardo
- II Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Cláusula Where
Esta cláusula sirve para extraer solo los datos que son
requeridos mediante alguna condición dada.
Sintaxis de Where
SELECT nombre_columna(s)
FROM nombre_tabla
WHERE nombre_columna operador valor
Siempre los campos de texto deben ir entre comillas
simples.
Eduardo Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Cláusula Where
Los operadores permitidos son:
<>, =... Distinto e Igual.
<, <=, >, >=... Menor, Menor Igual, etc.
Between... Entre 2 valores.
Like... Similar a, se utilizan con el comodin %.
Y por supuesto están los infaltables AND y OR.
Eduardo Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Ejemplo Where - I
Si se quisiera ver los datos de una persona de una ciudad
en particular, tendríamos:
Uso de Where
SELECT *
FROM Persona
WHERE Ciudad=’Springfield’
Lo cual devolverá:
Result-set
ID
1
4
5
Apellido
Simpson
Simpson
Flanders
Nombre
Homero
Bart
Ned
Dirección
Siempreviva 72
Siempreviva 72
Siempreviva 70
Eduardo Saavedra A.
Ciudad
Springfield
Springfield
Springfield
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Ejemplo Where - II
Si se quisiera ver los datos de las personas que su
apellido termine con “son” y de nombre “Bart”.
Uso de Where
SELECT *
FROM Persona
WHERE Apellido LIKE ´ %son ÁND Nombre=’Bart’;
Lo cual devolverá:
Result-set
ID
4
Apellido
Simpson
Nombre
Bart
Dirección
Siempreviva 72
Eduardo Saavedra A.
Ciudad
Springfield
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Contenidos
1
2
Conceptos
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Comandos SQL
SELECT
Ejemplo SELECT
DISTINCT
Ejemplo Distinct
WHERE
Ejemplo WHERE - I
Ejemplo WHERE - II
ORDER BY
Ejemplo ORDER BY
TOP
Ejemplo Top - I
Ejemplo TopEduardo
- II Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Palabra Clave ORDER BY
Esta palabra clave permite ordenar los resultados
obtenidos de forma ascendente o descendente (ASC ó
DESC).
Es posible utilizar varias columnas para ordenar.
Sintaxis de ORDER BY
SELECT nombre_columna(s)
FROM nombre_tabla
ORDER BY nombre_columna(s) ASC|DESC
Eduardo Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Ejemplo Order By
Suponga que se desea ordenar la lista de personas a
través de su apellido, de forma ascendente:
Uso de Order By
SELECT *
FROM Persona
ORDER BY Apellido ASC
Lo cual devolverá:
Result-set
ID
5
2
3
1
4
Apellido
Flanders
Fry
Griffin
Simpson
Simpson
Nombre
Ned
Phillip
Peter
Homero
Bart
Dirección
Siempreviva 70
Futuro
Spooner Street 725
Siempreviva 72
Siempreviva 72
Eduardo Saavedra A.
Ciudad
Springfield
Nueva Nueva York
Quahog
Springfield
Springfield
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Contenidos
1
2
Conceptos
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Comandos SQL
SELECT
Ejemplo SELECT
DISTINCT
Ejemplo Distinct
WHERE
Ejemplo WHERE - I
Ejemplo WHERE - II
ORDER BY
Ejemplo ORDER BY
TOP
Ejemplo Top - I
Ejemplo TopEduardo
- II Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Cláusula Top
La cláusula Top se usa para obtener una cierta cantidad
de tuplas y/o obtener un porcentaje de estas.
Sintaxis de TOP
SELECT TOP numero|porcentaje nombre_columna(s)
FROM nombre_tabla
Eduardo Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Ejemplo Top - I
Suponga que se desea obtener los 2 primeros registros de
la tabla persona.
Uso de Top
SELECT TOP 2 *
FROM Persona
Lo cual devolverá:
Result-set
ID
1
2
Apellido
Simpson
Fry
Nombre
Homero
Phillip
Dirección
Siempreviva 72
Futuro
Ciudad
Springfield
Nueva Nueva York
Mezclando esto con Order By resulta bastante útil.
Eduardo Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
SELECT
DISTINCT
WHERE
ORDER BY
TOP
Ejemplo Top - II
Suponga que se desea obtener la mitad de los primeros
registros de la tabla persona.
Uso de Top
SELECT TOP 50 PERCENT *
FROM Persona
Lo cual devolverá:
Result-set
ID
1
2
3
Apellido
Simpson
Fry
Griffin
Nombre
Homero
Phillip
Peter
Dirección
Siempreviva 72
Futuro
Spooner Street 725
Eduardo Saavedra A.
Ciudad
Springfield
Nueva Nueva York
Quahog
Conceptos
Conceptos
Comandos SQL
Fin
Contenidos
1
2
Conceptos
Tablas en base de datos
Declaraciones SQL
SQL DML y DLL
Comandos SQL
SELECT
Ejemplo SELECT
DISTINCT
Ejemplo Distinct
WHERE
Ejemplo WHERE - I
Ejemplo WHERE - II
ORDER BY
Ejemplo ORDER BY
TOP
Ejemplo Top - I
Ejemplo TopEduardo
- II Saavedra A.
Conceptos
Conceptos
Comandos SQL
Fin
Fin!
Dudas, Consultas?
Eduardo Saavedra A.
Conceptos