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