Lic. Gustavo Rei SQL. Todo lo trascripto en este apunte es recopilación de varios libros, más apuntes personales del autor y otros colaboradores.

Tamaño: px
Comenzar la demostración a partir de la página:

Download "Lic. Gustavo Rei SQL. Todo lo trascripto en este apunte es recopilación de varios libros, más apuntes personales del autor y otros colaboradores."

Transcripción

1 ANALISTAS DE SISTEMAS SISTEMAS DE PROCESAMIENTO DE DATOS 3 LENGUAJES 2 MATERIAS: Sistemas de Procesamiento de Datos 3 Lenguajes 2 DADO POR: Licenciado en Informática Gustavo Víctor Rei APUNTE GENERAL DE LA MATERIA (SQL) Versión : 01 SQL Nota del Autor La presente edición representa una revisión mayor de los apuntes anteriores como así también de sus auxiliares didáctico relacionados. Este apunte esta diseñado como material auxiliar de la cátedra, no debe ser tomado como único material de estudio, sino simplemente como base de guía de los temas expuestos en clase. Todo lo trascripto en este apunte es recopilación de varios libros, más apuntes personales del autor y otros colaboradores. Todos los libros utilizados son mencionados en Bibliografía a la cual el alumno deberá remitirse para ampliar los temas aquí tratados. AÑO 2003 Página 1 de 96

2 Base De Datos Y Modelos De Datos: Una base de datos está generalmente definida como un conjunto integrado de datos que modelizan un universo dado. Este universo está compuesto por objetos interrelacionados, los objetos de un mismo tipo constituyen una entidad y el lazo habido entre entidades se le denomina asociación. El proceso de descripción de asociaciones y entidades se llama modelización y se hace con la ayuda de un modelo de datos, existen actualmente cuatro modelos de datos diferentes: Modelo jerárquico. Modelo en red Modelo objeto Modelo relacional: el principio básico de este modelo consiste en representar tanto las entidades como las asociaciones con la ayuda de relaciones denominadas también tablas. Una tabla está compuesta por líneas y columnas, cada línea representa un objeto (proveedor-articulo) las columnas representan los atributos de dicho objeto. Una tabla es una estructura. OBJETIVOS DE LOS SISTEMAS DE GESTIÓN DE BASE DE DATOS: Las funciones de los S.G.B.D. son: Debe permitir la definición de todos los datos Debe permitir manipular datos Debe establecer controles para la seguridad de estos datos Debe permitir los accesos concurrentes. SUBLENGUAJES DEL SQL.: L.D.D. Lenguaje de descripción de datos. L.M.D. Lenguaje de manipulación de datos L.C.M. Lenguaje de control de datos. OBJETIVOS S.G.B.D.: Definición de datos: (modifica la estructura o añade campos). La misión del L.D.D. es describir y definir todos los esquemas que participen en la base de datos. Esto consiste en la descripción de los objetos que vamos a representar. La descripción de todas las estructuras que formen nuestra base de datos. Definición de vista: es una visión parcial de la tabla. cuando en una tabla alguna parte de esta no quiero que tenga derecho a manipularla nadie Manipulación de datos: L.M.D. recoge todas las operaciones de intercambio de datos entre las tablas, estas operaciones pueden ser de consulta o de puesta al día (inserción, modificación, supresión) estas operaciones se realizan con la ayuda del denominado L.M.D. Seguridad de los datos: consiste en garantizar que sólo los usuarios autorizados puedan efectuar operaciones correctas sobre la Base de Datos para ello se dispone de 2 tipos. o o Control sobre la base de datos Control sobre las tablas GESTIÓN DE LOS ACCESOS CONCURRENTES: El principal objetivo de la implantación de una base de datos es poner a disposición de un gran número de usuarios en conjunto integrado de datos, estos datos podrán ser manipulados por los diferentes usuarios y es ahora cuando se debe garantizar la coherencia de los datos después de las diversas manipulaciones. Esto se garantiza con la ayuda del concepto de transacción se define como transacción a una unidad lógica de tratamiento que aplicada a un estado coherente de una base de datos restituye un nuevo estado coherente de la base de datos pero con estos modificados, únicamente puede ser modificada completamente anulado. Concepción de una base de datos: El ciclo de vida de una base de datos puede descomponerse en 3 etapas: Concepción: la fase de concepción consiste en reproducir en el mundo real con ayuda de uno de los modelos de datos conocidos (relacional). El resultado de esta fase en un esquema escrito según un formalismo cualquiera no interpretable por el S.G.B.D. Creación de la B.D. vacía: La 2ª fase consiste en traducir este esquema en órdenes comprensibles para el S.G.B.D. como resultado se obtiene la estructura de la base de datos desprovista de cualquier tipo de información. Explotación: Es en esta fase donde los registros serán manipulados con la ayuda de los lenguajes de programación. Es ahora cuando los usuarios pueden consultar los datos y ponerlos a punto durante el resto de la vida de la base de datos. Problemas adquiridos por una mala concepción de una base de datos: AÑO 2003 Página 2 de 96

3 En las tablas hay que procurar que no haya duplicidad de datos: Redundancia de datos: si un cliente ha realizado más de un pedido todos los datos de este cliente estarán repetidos tantas veces como pedidos haya, lo mismo sucede para los artículos esto es opuesto al principal objetivo de una base de datos que consiste en evitar la repetición de los mismos. Puestas al día múltiple: Para poder asegurar la coherencia de los datos es necesario efectuar puestas a día múltiples. Cuando un cliente cambia de dirección Incoherencia de los datos: Sí una operación de puesta al día múltiple no se ha realizado completamente el estado de la base de datos queda incoherente y puede producir errores importantes. Pérdida de datos: La supresión de una línea en la tabla de pedidos entraña la pérdida de todos los datos relativos a un cliente si no ha efectuado ningún otro pedido. Esto es cierto también para un artículo que no ha sido pedido por ningún otro cliente. Estas anormalidades constituyen lo que se ha convenido en llamar comportamiento anormal de las tablas, para evitar esto existe un proceso llamado normalización que entre otras cosas intenta esclarecer los conceptos de dependencia funcional y estado de las tablas. Dependencia funcional: Este concepto se aplica a las columnas y consiste en hacer corresponder un único valor a aquella columna o columnas que consideremos más significativas. Estado de la tabla: Se dice que una tabla esta en estado de 1ª forma normal si toda columna de esta tabla no puede tener más que valores atómicos, un valor es atómica si él no es divisible. Estructura básica del lenguaje de programación SQL.: Base de datos: Esta compuesta de un conjunto de tablas del sistema creadas implícitamente por él y por un conjunto de tablas y vistas creadas por el usuario. Tablas: En informix, SQL server, Oracle, DB2, etc. el universo está descrito con la ayuda de tablas, cada una representa a una entidad o a una asociación entre entidades. Las tablas están compuestas de columnas o de líneas o filas llamadas convencionalmente campos y registros. Una columna representa un atributo de la entidad y para describirla es necesario especificar un nombre y un tipo de datos, una particularidad de las columnas es que pueden permitir o no valores nulos. o Fila: Es una combinación de los diferentes atributos del objeto (registro). o Vistas: Es una tabla virtual definida sobre las tablas bases descritas por el usuario su objeto es permitir a los usuarios manipular un subconjunto de datos. o Usuarios: uno de los objetivos de un sistema de gestión de base de datos es el de afianzar la seguridad de los datos, para hacer esto el lenguaje de programación genera todos los usuarios y sus permisos de acceso para acceder a una base de datos, cada usuario debe disponer de su autorización correspondiente y es el propietario de la base de datos el que debe dar y retirar permisos de acceso. o Índices: Se utilizan para aumentar el rendimiento del sistema y asegurar la integridad de los datos. A cada tabla que se crea se la asocia automáticamente una tabla índice que contiene la posición del registro según la columna especificada como índice. Qué es el SQL? Antes de empezar debes tener unas nociones básicas de bases de datos relacionales, si quieres repasarlas recurrí a tus apuntes de clases de bases de datos El SQL (Structured query language), lenguaje de consulta estructurado, es un lenguaje surgido de un proyecto de investigación de IBM para el acceso a bases de datos relacionales. Actualmente se ha convertido en un estándar de lenguaje de bases de datos, y la mayoría de los sistemas de bases de datos lo soportan, desde sistemas para ordenadores personales, hasta grandes ordenadores. Como su nombre indica, el SQL nos permite realizar consultas a la base de datos. Pero el nombre se queda corto ya que SQL además realiza funciones de definición, control y gestión de la base de datos. Las sentencias SQL se clasifican según su finalidad dando origen a tres lenguajes o mejor dicho sublenguajes: El DDL (Data Description Language), lenguaje de definición de datos, incluye órdenes para definir, modificar o borrar las tablas en las que se almacenan los datos y de las relaciones entre estas. (Es el que más varia de un sistema a otro) El DCL (Data Control Language), lenguaje de control de datos, contiene elementos útiles para trabajar en un entorno multiusuario, en el que es importante la protección de los datos, la seguridad de las tablas y el establecimiento de restricciones en el acceso, así como elementos para coordinar la compartición de datos por parte de usuarios concurrentes, asegurando que no interfieren unos con otros. El DML (Data Manipulation Language), lenguaje de manipulación de datos, nos permite recuperar los datos almacenados en la base de datos y también incluye órdenes para permitir al usuario actualizar la base de datos añadiendo nuevos datos, suprimiendo datos antiguos o modificando datos previamente almacenados. Características del lenguaje Una sentencia SQL es como una frase (escrita en inglés) con la que decimos lo que queremos obtener y de donde obtenerlo. Todas las sentencias empiezan con un verbo (palabra reservada que indica la acción a realizar), seguido del resto de cláusulas, algunas obligatorias y otras opcionales que completan la frase. Todas las sentencias siguen una sintaxis para que se puedan ejecutar correctamente, para describir esa sintaxis utilizaremos un diagrama sintáctico como el que se muestra a continuación. Existe un solo SQL? AÑO 2003 Página 3 de 96

4 Es muy común creer que existe un único SQL, pero debemos tener en cuenta que existen tantos SQL como DBMS lo utilicen, dado que cada fabricante le realiza agregados o le brinda distintos potenciales según las características propias de cada Soft. Ante estas circunstancias, se deberá tener en claro, que es imposible dar en el transcurso de la presente cátedra la totalidad de las variantes de SQL que existen, pese a que todos se basan en SQL 92, un Standard del mercado. Para clarificar lo presente podemos dar como ejemplos las variaciones de SQL más conocidas del mercado: SQL86 - Estándar inicial de SQL. Conjunto limitado de características. Apenas con alguna restricción de integridad. SQL89 - Revisión mínima del estándar del 86. Añade cierta integridad referencial. SQL92 (SQL2)- Revisión completa del lenguaje (súper conjunto del SQL89). Sobre todo se añade más potencia semántica en la definición de datos (restricciones de integridad, dominios, más tipos de datos). Mejora el lenguaje de consulta (Ej. productos natural y externo) y elimina problemas de ortogonalidad. Estandariza el SQL inmerso. SQL3 Siguiente revisión del SQL en proceso de estandarización. SQL propio de ORACLE 1 SQL de INFORMIX (sobre UNÍX) SQL de SQL Server (MS) 2 SQL de Access (y sus diferentes versiones) Ante esta posiblididad y a los efectos de clarificar el contenido de la materia nos ajustaremos al SQL propio del SQL Server, y SQL de Access. (El primero por ser el que obra en los laboratorios del Instituto y el segundo por pertenecer a un software apto para todos los usuarios. Composición del Lenguaje El lenguaje SQL está compuesto por comandos, cláusulas, operadores y funciones de agregado. Estos elementos se combinan en las instrucciones para crear, actualizar y manipular las bases de datos. 1 Oracle 7 Manual de Referencia, Koch, George., Osborne/McGraw-Hill, AÑO 2003 Página 4 de 96

5 Una sentencia SQL es como una frase (escrita en inglés) con la que decimos lo que queremos obtener y de donde obtenerlo. Todas las sentencias empiezan con un verbo (palabra reservada que indica la acción a realizar), seguido del resto de cláusulas, algunas obligatorias y otras opcionales que completan la frase. Todas las sentencias siguen una sintaxis para que se puedan ejecutar correctamente, para describir esa sintaxis utilizaremos un diagrama sintáctico como el que se muestra a continuación. Primeros comandos Consultas Simples SELECT Empezaremos por estudiar la sentencia SELECT, que permite recuperar datos de una o varias tablas. La sentencia SELECT es con mucho la más compleja y potente de las sentencias SQL. Empezaremos por ver las consultas más simples, basadas en una sola tabla. Esta sentencia forma parte del DML (lenguaje de manipulación de datos), en este tema veremos cómo seleccionar columnas de una tabla, cómo seleccionar filas y cómo obtener las filas ordenadas por el criterio que queramos. El resultado de la consulta es una tabla lógica, porque no se guarda en el disco sino que está en memoria y cada vez que ejecutamos la consulta se vuelve a calcular. Cuando ejecutamos la consulta se visualiza el resultado en forma de tabla con columnas y filas, pues en la SELECT tenemos que indicar qué columnas queremos que tenga el resultado y qué filas queremos seleccionar de la tabla origen. FROM Con la cláusula FROM indicamos en qué tabla tiene que buscar la información. En este capítulo de consultas simples el resultado se obtiene de una única tabla. La sintaxis de la cláusula es: FROM ESPECIFICACIÓN DE TABLA Una especificación de tabla puede ser el nombre de una consulta guardada (las que aparecen en la ventana de base de datos), o el nombre de una tabla que a su vez puede tener el siguiente formato: ALIAS DE TABLA Aliastabla es un nombre de alias, es como un segundo nombre que asignamos a la tabla, si en una consulta definimos un alias para la tabla, esta se deberá nombrar utilizando ese nombre y no su nombre real, además ese nombre sólo es válido en la consulta donde se define. El alias se suele emplear en consultas basadas en más de una tabla que veremos en el tema siguiente. La palabra AS que se puede poner delante del nombre de alias es opcional y es el valor por defecto por lo que no tienen ningún efecto. Ejemplo: SELECT...FROM oficinas ofi ; equivalente a SELECT...FROM oficinas AS ofi esta sentencia me indica que se van a buscar los datos en la tabla oficinas que queda renombrada en esta consulta con ofi. AÑO 2003 Página 5 de 96

6 IN En una SELECT podemos utilizar tablas que no están definidas en la base de datos (siempre que tengamos los permisos adecuados claro), si la tabla no está en la base de datos activa, debemos indicar en qué base de datos se encuentra con la cláusula IN. En la cláusula IN el nombre de la base de datos debe incluir el camino completo, la extensión (.mdb) 3, y estar entre comillas simples. Supongamos que la tabla empleados estuviese en otra base de datos llamada otra en la carpeta c:\mis documentos\, habría que indicarlo así: SELECT * FROM empleados IN 'c:\mis documentos\otra.mdb' 4 Generalmente tenemos las tablas en la misma base de datos y no hay que utilizar la cláusula IN. COLUMNAS (CAMPOS) La lista de columnas que queremos que aparezcan en el resultado es lo que llamamos lista de selección y se especifica delante de la cláusula FROM. ASTERISCO Se utiliza el asterisco * en la lista de selección para indicar 'todas las columnas de la tabla'. Tiene dos ventajas: Evitar nombrar las columnas una a una (es más corto). Si añadimos una columna nueva en la tabla, esta nueva columna saldrá sin tener que modificar la consulta. Se puede combinar el * con el nombre de una tabla (Ej. oficinas.*), pero esto se utiliza más cuando el origen de la consulta son dos tablas. ALIAS DE COLUMNA. Cuando se visualiza el resultado de la consulta, normalmente las columnas toman el nombre que tiene la columna en la tabla, si queremos cambiar ese nombre lo podemos hacer definiendo un alias de columna mediante la cláusula AS será el nombre que aparecerá como título de la columna. COLUMNAS CALCULADAS. Además de las columnas que provienen directamente de la tabla origen, una consulta SQL puede incluir columnas calculadas cuyos valores se calculan a partir de los valores de los datos almacenados. Para solicitar una columna calculada, se especifica en la lista de selección una expresión en vez de un nombre de columna. La expresión puede contener sumas, restas, multiplicaciones y divisiones, concatenación & 5, paréntesis y también funciones predefinidas). FORMAR EXPRESIONES. Una expresión se forma combinando un operador con uno o generalmente dos operandos. OPERADORES. ACCESS operador +, se utiliza para sumar dos números. operador -, se utiliza para hallar la diferencia entre dos números. operador *, se utiliza para multiplicar dos números. operador ^, se utiliza para elevar un número a la potencia del exponente ( número ^ exponente ) operador /, se utiliza para dividir dos números y obtener un resultado de signo flotante. operador \, se utiliza para dividir dos números y obtener un resultado entero. operador Mod, divide dos números y devuelve sólo el resto. El operador &, se utiliza para concatenar dos expresiones de tipo texto. 3 Este comando se refiere a MS Acces, varía según el DBMS 4 Este comando se refiere a MS Access. 5 El carácter de concatenación varía según el DBMS, &: acces, % sql92, etc. AÑO 2003 Página 6 de 96

7 También se puede utilizar el operador de suma + cuando los dos operandos son de tipo texto, para concatenarlos. Un operando puede ser un nombre de columna, una expresión, un valor concreto o una función predefinida. SQL SERVER Operadores aritméticos Operador Significado + (suma) Suma. - (resta) Resta. * (multiplicación) Multiplicación. / (división) División. % (módulo) Devuelve el resto entero de una división. Por ejemplo, 12 % 5 = 2 porque el resto de 12 dividido entre 5 es 2. Operadores BIT a BIT Los operadores BIT a BIT realizan tratamientos de bits entre dos expresiones de cualquiera de los tipos de datos de la categoría del tipo de datos enteros. Operador Significado & (operador bit a bit AND) Operador bit a bit AND (dos operandos). (operador bit a bit OR) Operador bit a bit OR (dos operandos). ^ (operador bit a bit OR exclusivo) Operador bit a bit OR-exclusivo (dos operandos). Los operandos para los operadores BIT a BIT pueden ser de cualquiera de los tipos de datos de las categorías entero o cadena binaria (excepto el tipo de datos image), con la excepción de que ambos operandos no pueden ser de cualquiera de los tipos de datos de la categoría cadena binaria. La siguiente tabla muestra los tipos de datos de operando admitidos. Operando izquierdo Operando derecho binary bit int smallint tinyint varbinary int, smallint o tinyint int, smallint, tinyint o bit int, smallint, tinyint, binary o varbinary int, smallint, tinyint, binary o varbinary int, smallint, tinyint, binary o varbinary int, smallint o tinyint Operadores de comparación Los operadores de comparación comprueban si dos expresiones son iguales o no. Se pueden utilizar en todas las expresiones excepto en las de los tipos de datos text, ntext o image. Operador Significado = (igual al) Igual a > (mayor que) Mayor que < (menor que) Menor que >= (mayor que o igual que) <= (menor que o igual que) Mayor que o igual a Menor que o igual a <> (no es igual a) No es igual a AÑO 2003 Página 7 de 96

8 Operador Significado!= (no es igual a) No es igual a (no es del estándar SQL-92)!< (no es menor que) No es menor que (no es del estándar SQL-92)!> (no es mayor que) No es mayor que (no es del estándar SQL-92) Operadores lógicos Los operadores lógicos comprueban la veracidad de alguna condición. Éstos, como los operadores de comparación, devuelven el tipo de datos Boolean con valor TRUE o FALSE. Operador Significado ALL AND ANY TRUE si el conjunto completo de comparaciones es TRUE. TRUE si ambas expresiones booleanas son TRUE. TRUE si una cualquier miembro del conjunto de comparaciones es TRUE. BETWEEN TRUE si el operando está dentro de un intervalo. EXISTS IN LIKE NOT OR SOME TRUE si una subconsulta contiene a cualquiera de las filas. TRUE si el operando es igual a uno de la lista de expresiones. TRUE si el operando coincide con un patrón. Invierte el valor de cualquier otro operador booleano. TRUE si cualquiera de las dos expresiones booleanas es TRUE. TRUE si alguna de las comparaciones de un conjunto es TRUE. FUNCIONES Access DATE () devuelve el día en que estamos NOW () devuelve el día y la hora actual YEAR (fecha) devuelve el año de la fecha MONTH (fecha) devuelve el mes de la fecha DATEVALUE (literal) convierte el literal en un valor de fecha. SQL Server Funciones de agregado El lenguaje de programación Transact-SQL proporciona estas funciones de agregado: AVG BINARY_CHECKSUM CHECKSUM CHECKSUM_AGG COUNT COUNT_BIG GROUPING MAX MIN SUM STDEV STDEVP VAR VARP Funciones de fecha y hora Estas funciones escalares realizan una operación sobre un valor de fecha y hora de entrada, y devuelven un valor de cadena, numérico o de fecha y hora. Esta tabla presenta las funciones de fecha y hora y su propiedad determinista. Para obtener más información acerca del determinismo de funciones. AÑO 2003 Página 8 de 96

9 Función DATEADD DATEDIFF DATENAME DATEPART DAY GETDATE Determinismo Determinista Determinista No determinista Determinista excepto cuando se utiliza como DATEPART (dw, date). La parte de la fecha correspondiente al día de la semana (dw) depende del valor establecido por SET DATEFIRST, que indica el primer día de la semana. Determinista No determinista GETUTCDATE No determinista MONTH YEAR Determinista Determinista Funciones matemáticas Estas funciones escalares realizan un cálculo, normalmente basado en valores de entrada proporcionados como argumentos, y devuelven un valor numérico. ABS DEGREES RAND ACOS EXP ROUND ASIN FLOOR SIGN ATAN LOG SIN ATN2 LOG10 SQUARE CEILING PI SQRT COS POWER TAN COT RADIANS Funciones de cadena Estas funciones escalares realizan una operación sobre una cadena de entrada y devuelven un valor de cadena o un valor numérico. ASCII NCHAR SOUNDEX CHAR PATINDEX SPACE CHARINDEX REPLACE STR DIFFERENCE QUOTENAME STUFF LEFT REPLICATE SUBSTRING LEN REVERSE UNICODE LOWER RIGHT UPPER LTRIM RTRIM Observaciones: Se aclara que se ampliarán las funciones y operaciones en el transcurso de la clase. Ordenación de las filas - ORDER by Para ordenar las filas del resultado de la consulta, tenemos la cláusula ORDER by. Con esta cláusula se altera el orden de visualización de las filas de la tabla pero en ningún caso se modifica el orden de las filas dentro de la tabla. La tabla no se modifica. Ejemplos de Select: Todos estos ejemplos son en base a los conceptos adquiridos en el presente capítulo: SELECT * FROM empleados IN 'c:\mis documentos\otra.mdb' Seleccionar datos en una base de datos externa (Ac- AÑO 2003 Página 9 de 96

10 SELECT * FROM oficinas o bien SELECT oficinas.* FROM oficinas SELECT nombre, oficina, contrato FROM ofiventas SELECT idfab, idproducto, descripcion, precio FROM productos SELECT idfab AS fabricante, idproducto, descripcion FROM productos SELECT ciudad, región, (ventas-objetivo) AS superavit FROM oficinas SELECT idfab, idproducto, descripcion, (existencias * precio) AS valoración FROM productos SELECT nombre, MONTH(contrato), YEAR(contrato) FROM repventas SELECT nombre, numemp, oficinarep FROM empleados ORDER BY nombre SELECT nombre, numemp, contrato FROM empleados ORDER BY contrato DESC cess) Lista todos los datos de las oficinas Lista el nombre, oficina, y fecha de contrato de todos los empleados Lista una tarifa de productos Como título de la primera columna aparecerá fabricante en vez de idfab Lista la ciudad, región y el superavit de cada oficina. De cada producto obtiene su fabricante, idproducto, su descripción y el valor del inventario Lista el nombre, mes y año del contrato de cada vendedor. La función MONTH() devuelve el mes de una fecha La función YEAR() devuelve el año de una fecha Obtiene un listado alfabético de los empleados Obtiene un listado de los empleados por orden de antigüedad en la empresa empezando por los más recientemente incorporados. Selección de filas Las cláusulas DISTINCT / ALL Al incluir la cláusula DISTINCT en la SELECT, se eliminan del resultado las repeticiones de filas. Si por el contrario queremos que aparezcan todas las filas incluidas las duplicadas, podemos incluir la cláusula ALL o nada, ya que ALL es el valor que SQL asume por defecto. Por ejemplo queremos saber los códigos de los directores de oficina. SELECT dir FROM oficinas Ó SELECT ALL dir FROM oficinas SELECT DISTINCT dir FROM oficinas La cláusula TOP La cláusula TOP permite sacar las n primeras filas de la tabla origen. No elige entre valores iguales, si pido los 25 primeros valores pero el que hace 26 es el mismo valor que el 25, entonces devolverá 26 registros en vez de 25 (o los que sean). Siempre se guía por la columna de ordenación, la que aparece en la cláusula ORDER BY o en su defecto la clave principal de la tabla. Por ejemplo queremos saber los dos empleados más antiguos de la empresa. SELECT TOP 2 numemp, nombre FROM empleado ORDER BY contrato Lista el código y nombre de los empleados ordenándolos por fecha de contrato, sacando únicamente los dos primeros (serán los dos más antiguos). SELECT TOP 3 numemp, nombre FROM empleado ORDER BY contrato En este caso tiene que sacar los tres primeros, pero si nos fijamos en las fechas de contrato tenemos 20/10/86, 10/12/86, 01/03/87, 01/03/87, la tercera fecha es igual que la cuarta, en este caso sacará estas cuatro filas en vez de tres, y sacaría todas las filas que tuviesen el mismo valor que la tercera fecha de contrato. El número de filas que queremos visualizar se puede expresar con un número entero o como un porcentaje sobre el número total de filas que se recuperarían sin la cláusula TOP. En este último caso utilizaremos la cláusula TOP n PERCENT (porcentaje en inglés). SELECT TOP 20 PERCENT nombre FROM empleado ORDER BY contrato La cláusula WHERE Lista el nombre de los empleados ordenándolos por fecha de contrato, sacando únicamente un 20% del total de empleados. Como tenemos 10 empleados, sacará los dos primeros, si tuviésemos 100 empleados sacaría los 20 primeros. La cláusula WHERE selecciona únicamente las filas que cumplan la condición de selección especificada. En la consulta sólo aparecerán las filas para las cuales la condición es verdadera (TRUE), los valores nulos (NULL) no se incluyen por lo tanto en las filas del resultado. La condición de selección puede ser cualquier condición válida o combinación de condiciones utilizan- AÑO 2003 Página 10 de 96

11 do los operadores NOT (no) AND (y) y OR (ó). En ACCESS2000 una cláusula WHERE puede contener hasta 40 expresiones vinculadas por operadores lógicos AND y OR. Los operadores lógicos sirven para combinar condiciones. En Access2000 una condición puede tomar tres valores TRUE (verdadero), FALSE (falso) o NULL (nulo), por lo tanto el resultado de los operadores lógicos también será true, false o null. Para ver cómo funcionan los operadores lógicos utilizaremos las tablas de verdad de estos operadores. OPERADOR AND Para que el resultado sea verdadero las dos condiciones deben ser verdaderas. AND TRUE FALSE NULL TRUE TRUE FALSE NULL FALSE FALSE FALSE FALSE NULL NULL FALSE NULL OPERADOR OR. El resultado es verdadero si al menos una de las dos condiciones es verdadera. OR TRUE FALSE NULL TRUE TRUE TRUE TRUE FALSE TRUE FALSE NULL NULL TRUE NULL NULL OPERADOR NOT. El resultado es invertido. NOT TRUE FALSE NULL FALSE TRUE NULL Condiciones de selección En SQL tenemos cinco condiciones básicas: El test de comparación El test de rango El test de pertenencia a un conjunto El test de valor nulo El test de correspondencia con patrón. EL TEST DE COMPARACIÓN. Compara el valor de una expresión con el valor de otra. La sintaxis es la siguiente: = igual que <> distinto de < menor que <= menor o igual > mayor que >= mayor o igual TEST DE RANGO (BETWEEN). Examina si el valor de la expresión está comprendido entre los dos valores definidos por exp1 y exp2. Tiene la siguiente sintaxis: TEST DE PERTENENCIA A CONJUNTO (IN) Examina si el valor de la expresión es uno de los valores incluidos en la lista de valores. TEST DE VALOR NULO (IS NULL) Una condición de selección puede dar como resultado el valor verdadero TRUE, falso FALSE o nulo NULL. AÑO 2003 Página 11 de 96

12 Cuando una columna que interviene en una condición de selección contiene el valor nulo, el resultado de la condición no es verdadero ni falso, sino nulo, sea cual sea el test que se haya utilizado. Por eso si queremos listar las filas que tienen valor en una determinada columna, no podemos utilizar el test de comparación, la condición oficina = null devuelve el valor nulo sea cual sea el valor contenido en oficina. Si queremos preguntar si una columna contiene el valor nulo debemos utilizar un test especial, el test de valor nulo. TEST DE CORRESPONDENCIA CON PATRÓN (LIKE) Se utiliza cuando queremos utilizar caracteres comodines para formar el valor con el comparar. Tiene la siguiente sintaxis: Los comodines más usados son los siguientes:? Representa un carácter cualquiera (Access) * representa cero o más caracteres (Access) # representa un dígito cualquiera (0-9) (Access) % Cualquier cadena de cero o más caracteres. (SQL Server) _ Cualquier carácter individual (SQL Server) [ ] Cualquier carácter individual del intervalo (por ejemplo, [a-f]) o conjunto (por ejemplo, [abcdef]) especificado. (SQL Server) [^] Cualquier carácter individual fuera del intervalo (por ejemplo, [^a - f]) o conjunto (por ejemplo, [^abcdef]) especificado. (SQL Server) Ejemplos SELECT numemp, nombre FROM empleados WHERE nombre LIKE 'Luis*' SELECT numemp, nombre FROM empleados WHERE nombre LIKE '*Luis*' SELECT numemp, nombre FROM empleados WHERE nombre LIKE '??a*' SELECT phone FROM pubs.dbo.authors WHERE phone LIKE '415%' Select * From clientes Where poblacion Like 'madrid' And Not nombre Like 'Pepe' RESUMEN OPERADORES Operador Propósito Ejemplo = Igualdad. SELECT * FROM emp WHERE sal = 1500;!=, ^=, <>, = Desigualdad. SELECT * FROM emp WHERE sal!= 1500; <, > Mayor, menor. SELECT * FROM emp WHERE sal > 1500; SELECT * FROM emp WHERE sal < 1500; <=, >= Mayor, menor o igual. SELECT * FROM emp WHERE sal >= 1500; SELECT * FROM emp WHERE sal <= 1500; IN Igual a cualquier miembro a probar, igual a =ANY. SELECT * FROM emp WHERE job IN ( CLERK, ANALYST ); SELECT * FROM emp WHERE sal IN (SELECT sal FROM emp AÑO 2003 Página 12 de 96

TEMA 10. INTRODUCCCIÓN A SQL. CONSULTAS BASADAS EN UNA TABLA

TEMA 10. INTRODUCCCIÓN A SQL. CONSULTAS BASADAS EN UNA TABLA 1 TEMA 10. INTRODUCCCIÓN A SQL. CONSULTAS BASADAS EN UNA TABLA 1. Definición de SQL. Características 2. Selección del origen de los datos. Cláusula FROM 3. Selección de columnas. Columnas calculadas 4.

Más detalles

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo.

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo. CONSULTAS CON SQL 1. Qué es SQL? Debido a la diversidad de lenguajes y de bases de datos existentes, la manera de comunicar entre unos y otras sería realmente complicada a gestionar de no ser por la existencia

Más detalles

CONSULTAS SIMPLES SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

CONSULTAS SIMPLES SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE CONSULTAS SIMPLES SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE CONSULTAS SIMPLES Vamos a empezar por la instrucción que más se utiliza en SQL, la sentencia SELECT. La

Más detalles

CONSULTAS MULTITABLAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

CONSULTAS MULTITABLAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE CONSULTAS MULTITABLAS SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE CONSULTAS MULTITABLAS Hasta ahora hemos visto consultas que obtienen los datos de una sola tabla,

Más detalles

1. DML. Las subconsultas

1. DML. Las subconsultas 1.1 Introducción 1. DML. Las subconsultas Una subconsulta es una consulta que aparece dentro de otra consulta o subconsulta en la lista de selección, en la cláusula WHERE o HAVING, originalmente no se

Más detalles

LAS SUBCONSULTAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

LAS SUBCONSULTAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE LAS SUBCONSULTAS SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE LAS SUBCONSULTAS Una subconsulta es una consulta que aparece dentro de otra consulta o subconsultas, en

Más detalles

Dependiendo de las tareas, podemos clasificar las sentencias SQL en dos tipos:

Dependiendo de las tareas, podemos clasificar las sentencias SQL en dos tipos: CONTENIDO. 1. INTRODUCCIÓN 2. TIPOS DE SENTENCIAS SQL 3. TIPOS DE DATOS 4. SQL PLUS 5. CONSULTAS DE DATOS 6. RESTRICCIÓN Y CLASIFICACIÓN DE LOS DATOS 7. FUNCIONES A NIVEL DE FILA 8. VISUALIZACIÓN DE DATOS

Más detalles

Tutorial de SQL - El comando SELECT

Tutorial de SQL - El comando SELECT Tutorial de SQL - El comando SELECT El objetivo de este documento es guiar su aprendizaje del comando SELECT de SQL. La idea es que, estando conectado a sql*plus, lea este material mientras ejercita simultáneamente

Más detalles

Consultas simples. 3.1. Introducción. 3.2. Origen de datos FROM. [INTO nueva_tabla] [FROM { } [,...n ] ] [WHERE ]

Consultas simples. 3.1. Introducción. 3.2. Origen de datos FROM. [INTO nueva_tabla] [FROM { <origen> } [,...n ] ] [WHERE <condicion_busqueda> ] Consultas simples [INTO nueva_tabla] 3.1. Introducción Vamos a empezar por la instrucción que más se utiliza en SQL, la sentencia SELECT. La sentencia SELECT es, con diferencia, la más compleja y potente

Más detalles

Unidad. Lenguaje SQL. (Structured Query Language)

Unidad. Lenguaje SQL. (Structured Query Language) Unidad Lenguaje SQL (Structured Query Language) 1 SQL Definición DDL Consulta y Actualización DML Create Alter Drop Select Insert Update Delete 2 SQL DDL CREATE TABLE nombre_tabla (nombre_columna tipo_dato/dominio

Más detalles

CONSULTAS DE RESUMEN SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

CONSULTAS DE RESUMEN SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE CONSULTAS DE RESUMEN SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE CONSULTAS DE RESUMEN Una de las funcionalidades de la sentencia SELECT es el permitir obtener resúmenes

Más detalles

Tipo de Dato TRANSACT SQL

Tipo de Dato TRANSACT SQL Tipos De Datos TRANSACT SQL Tipo de Dato Descripción Numéricos aproximados: float Punto flotante, desde -1.79 E 308 a 1.79 E 308 real Punto flotante, desde 3.40 E 38 a 3.40 E 38 Int entero entre (2 31

Más detalles

INTRODUCCIÓN AL SQL. TRANSACT-SQL SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

INTRODUCCIÓN AL SQL. TRANSACT-SQL SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE INTRODUCCIÓN AL SQL. TRANSACT-SQL SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE INTRODUCCIÓN AL SQL. TRANSACT SQL CONCEPTOS BÁSICO DE SQL SQL (Structured Query Language),

Más detalles

8 SQL SERVER 2008 RA-MA

8 SQL SERVER 2008 RA-MA ÍNDICE Capítulo 1. Características, novedades y entorno de trabajo... 17 1.1 Novedades en SQL Server 2008... 17 1.2 Instalación de Microsoft SQL Server 2008... 19 1.3 Versiones de Microsoft SQL Server

Más detalles

Structured Query Language (SQL) Fundamentos de Bases de Datos InCo - 2011

Structured Query Language (SQL) Fundamentos de Bases de Datos InCo - 2011 Structured Query Language () Fundamentos de Bases de Datos InCo - Un poco de historia Lenguajes de consulta relacionales: SEQUEL (IBM-1970) QUEL (Ingres-1970) QBE (IBM-1970) es el lenguaje comercial más

Más detalles

8 MICROSOFT SQL SERVER 2008 R2. CURSO PRÁCTICO RA-MA

8 MICROSOFT SQL SERVER 2008 R2. CURSO PRÁCTICO RA-MA ÍNDICE CAPÍTULO 1. CARACTERÍSTICAS, NOVEDADES Y ENTORNO DE TRABAJO...17 1.1 NOVEDADES EN SQL SERVER 2008 R2...17 1.2 INSTALACIÓN DE MICROSOFT SQL SERVER 2008 R2...18 1.3 VERSIONES DE MICROSOFT SQL SERVER

Más detalles

SQL Server 2000. FEMEPA SQL Server 2000

SQL Server 2000. FEMEPA SQL Server 2000 FEMEPA Partes del SQL El lenguaje SQL está compuesto de varios sub-lenguajes, entre los cuales destacan los tres siguientes: DML. Lenguaje de definición de datos. Todas las sentencias de manipulación de

Más detalles

1. BASES DE DATOS RELACIONALES 1.1 INTRODUCCIÓN

1. BASES DE DATOS RELACIONALES 1.1 INTRODUCCIÓN 1. BASES DE DATOS RELACIONALES 1.1 INTRODUCCIÓN No cabe duda que la información es la base de nuestra sociedad, recibimos y manejamos volúmenes enormes de información y el ordenador es la herramienta que

Más detalles

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros La sentencia INSERT permite agregar nuevas filas de datos a las tablas existentes. Está sentencia

Más detalles

SQL. Lenguaje de Consulta Estructurado. Curso básico de SQL (Leire Urcola Carrera)

SQL. Lenguaje de Consulta Estructurado. Curso básico de SQL (Leire Urcola Carrera) SQL Lenguaje de Consulta Estructurado Curso básico de SQL (Leire Urcola Carrera) Indice de contenidos Introducción Consultas de Selección Criterios de Selección Agrupamiento de Registros y funciones agregadas

Más detalles

SINTAXIS DE SQL-92. ::= CREATE SCHEMA [ ... ]

SINTAXIS DE SQL-92. <definición de esquema >::= CREATE SCHEMA <cláusula de nombre de esquema> [ <elemento de esquema>... ] SINTAXIS DE SQL-92 Introducción: Se presenta brevemente un resumen de la sintaxis de SQL según el estándar ISO 9075 (SQL- 92), dividido en tres partes: - Lenguaje de Definición de Daots (LDD), - Lenguaje

Más detalles

Procedimientos para agrupar y resumir datos

Procedimientos para agrupar y resumir datos Procedimientos para agrupar y resumir datos Contenido Introducción Presentación de los primeros n valores Uso de funciones de agregado 4 Fundamentos de GROUP BY 8 Generación de valores de agregado dentro

Más detalles

Bases de Datos Relacionales

Bases de Datos Relacionales 2da. Parte Bases de Datos Relacionales Objetivos de la Clase SQL. Tipos de sentencias SQL Describir los tipos de dato que se pueden utilizar al especificar la definición de columnas. Sentencias SQL Select.

Más detalles

Bases de Datos 2. Teórico

Bases de Datos 2. Teórico Bases de Datos 2 Teórico Structured Query Language (SQL) Características de SQL Standard Opera sobre conjuntos de tuplas: incluso para las operaciones de inserción, borrado y actualización. No elimina

Más detalles

A.1. Definiciones de datos en SQL

A.1. Definiciones de datos en SQL A.1. Definiciones de datos en SQL Las Sentencias del lenguaje de definición de datos (DDL) que posee SQL operan en base a tablas. Las Principales sentencias DDL son las siguientes: CREATE TABLE DROP TABLE

Más detalles

1.264 Tema 7. Introducción a SQL

1.264 Tema 7. Introducción a SQL 1.264 Tema 7 Introducción a SQL Lenguaje de consulta estructurado (SQL) Tema 7: SELECT, INSERT, DELETE y UPDATE. Relaciones. Tema 8: Subconsultas. Vistas (tablas virtuales). Indexados. Transacciones. Seguridad.

Más detalles

SENTENCIAS Y CONSULTAS EN SQL SERVER

SENTENCIAS Y CONSULTAS EN SQL SERVER SENTENCIAS Y CONSULTAS EN SQL SERVER En esta sección nos preocuparemos por conocer, las consultas en SQL que describiremos aquí. Para eso haremos un pequeño de las palabras claves que se utilizan en SQL,

Más detalles

ADMINISTRACION DE BASES DE DATOS EN ORACLE

ADMINISTRACION DE BASES DE DATOS EN ORACLE SQL LENGUAJE ESTRUCTURADO DE CONSULTA El nacimiento del lenguaje SQL data de 1970 cuando E. F. Codd publica su libro: "Un modelo de datos relacional para grandes bancos de datos compartidos". Ese libro

Más detalles

El lenguaje SQL es un lenguaje estándar para el acceso y

El lenguaje SQL es un lenguaje estándar para el acceso y 1. INTRODUCCIÓN El lenguaje SQL es un lenguaje estándar para el acceso y manipulación de bases de datos relacionales como SQL Server. Esto quiere decir que aprender SQL es algo indispensable para cualquier

Más detalles

INDICE Primera Parte. Panorámica general de SQL 2. Rápido repaso de SQL 3. SQL en Perspectiva

INDICE Primera Parte. Panorámica general de SQL 2. Rápido repaso de SQL 3. SQL en Perspectiva INDICE Prólogo XXIII Por qué este libro es para usted XXVII Primera Parte. Panorámica general de SQL 1 1. Introducción 3 El lenguaje SQL 3 El papel de SQL 6 Características y beneficios de SQL 7 Independencia

Más detalles

Tema 4. SQL. Juan Ignacio Rodríguez de León

Tema 4. SQL. Juan Ignacio Rodríguez de León Tema 4. SQL Juan Ignacio Rodríguez de León Resumen Este tema se centra exclusivamente en el estudio del lenguaje de consultas SQL (Structured Query Language). SQL usa una combinación de álgebra relacional

Más detalles

MANUAL BÁSICO DEL LENGUAJE SQL

MANUAL BÁSICO DEL LENGUAJE SQL MANUAL BÁSICO DEL LENGUAJE SQL ESCUELA COLOMBIANA DE INGENIERÍA JULIO GARAVITO LABORATORIO DE INFORMÁTICA BOGOTÁ D. C. 2007-2 TABLA DE CONTENIDO INTRODUCCIÓN... 3 1. COMANDOS... 4 1.1 Comandos DLL... 4

Más detalles

ÍNDICE. Introducción... Capítulo 1. Novedades de Access 2013... 1

ÍNDICE. Introducción... Capítulo 1. Novedades de Access 2013... 1 Introducción... XIII Capítulo 1. Novedades de Access 2013... 1 Nuevas posibilidades de cifrado, compactación y reparación de archivos... 1 Trabajo en la nube... 2 Compartir la información... 3 Guardar

Más detalles

ÍNDICE INTRODUCCIÓN...13

ÍNDICE INTRODUCCIÓN...13 ÍNDICE INTRODUCCIÓN...13 CAPÍTULO 1. EL MODELO RELACIONAL. LENGUAJE SQL...17 1.1 INTRODUCCIÓN AL MODELO RELACIONAL...17 1.2 RELACIONES...19 1.2.1 Definición formal de relación...21 1.2.2 Propiedades y

Más detalles

Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas)

Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas) Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas) Lo que aprenderá Esta clase es aplicable para los usuarios de Oracle8i, Oracle9i y Oracle Database 10g. En este

Más detalles

SQL Los fundamentos del lenguaje

SQL Los fundamentos del lenguaje Introducción 1. Un poco de historia 11 2. Las normas SQL 12 3. Descripción rápida del modelo relacional 14 3.1 Principales conceptos del modelo relacional 15 3.2 Principales reglas 16 4. Los operadores

Más detalles

CURSO DE SQL SERVER 2005

CURSO DE SQL SERVER 2005 CURSO DE SQL SERVER 2005 Una vez finalizado el curso, el alumno estará preparado para: Instalar y configurar SQL Server 2005. Comprender los conceptos más importantes del diseño de bases de datos. Crear

Más detalles

BREVE INTRODUCCIÓN AL SQL Aplicación al Programa Escuela Última actualización: 17/10/2000

BREVE INTRODUCCIÓN AL SQL Aplicación al Programa Escuela Última actualización: 17/10/2000 Secretaría General de Educación y Formación Profesional Dirección General de Educación, Formación Profesional e Innovación Educativa Subdirección General de Acción Educativa BREVE INTRODUCCIÓN AL SQL Aplicación

Más detalles

Tema 33. El lenguaje SQL

Tema 33. El lenguaje SQL Tema 33. El lenguaje SQL Introducción... 1 Modos de uso... 2 Ejecución de las sentencias SQL... 2 Instrucciones DDL Data Definition Language-... 3 Instrucciones DML Data Manipulation Language-... 4 Instrucciones

Más detalles

COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN

COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN COMANDOS DE SQL, OPERADORES, CLAUSULAS Y CONSULTAS SIMPLES DE SELECCIÓN Tipos de datos SQL admite una variada gama de tipos de datos para el tratamiento de la información contenida en las tablas, los tipos

Más detalles

Qué es una subconsulta?.

Qué es una subconsulta?. Tema 5. SUBCONSULTAS. Autora: Maria Teresa Miñana Qué es una subconsulta?. Una subconsulta en SQL consiste en utilizar los resultados de una consulta dentro de otra, que se considera la principal. Esta

Más detalles

Introducción a las bases de datos.

Introducción a las bases de datos. Introducción a las BBDD 1 Centro de Referencia Linux UAM-IBM Introducción a las bases de datos. Carmen B. Navarrete Navarrete carmen_navarrete@telefonica.net Introducción a las BBDD 2 Qué vamos a ver?

Más detalles

Acceso a bases de datos MySQL con PHP

Acceso a bases de datos MySQL con PHP GESTIÓN Y ADMINISTRACIÓN WEB Acceso a bases de datos MySQL con PHP Ing. CIP Fabián Silva Alvarado fsilvasys@hotmail.com DEFINICIÓN DE BASE DE DATOS Base de Datos es un conjunto de datos relacionados entre

Más detalles

Temario. Índices simples Árboles B Hashing

Temario. Índices simples Árboles B Hashing Temario Introducción y fundamentos Introducción a SQL Modelo Entidad / Relación Modelo relacional Diseño relacional: formas normales Consultas Cálculo relacional Álgebra relacional Implementación de bases

Más detalles

UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES. Xochitl Clemente Parra Armando Méndez Morales

UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES. Xochitl Clemente Parra Armando Méndez Morales UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Práctica preliminar Crear la siguiente base de datos de prácticas

Más detalles

PROGRAMAS DE ESTUDIO FORMATO 7 INTRODUCCIÓN A SQL. Área de Formación Profesional

PROGRAMAS DE ESTUDIO FORMATO 7 INTRODUCCIÓN A SQL. Área de Formación Profesional PROGRAMAS DE ESTUDIO FORMATO 7 NOMBRE DE LA ASIGNATURA INTRODUCCIÓN A SQL CICLO, AREA O MODULO Área de Formación Profesional CLAVE DE LA ASIGNATURA IT222 OBJETIVOS GENERALES DE LA ASIGNATURA Al final del

Más detalles

Manual de introducción SQL Centro de Tecnología Informática

Manual de introducción SQL Centro de Tecnología Informática Manual de introducción SQL Centro de Tecnología Informática web1.cti.unav.es/cti/manuales/intro_sql/indice.html Universidad de Navarra 1. CONCEPTO DE BASE DE DATOS 2. EL LENGUAJE DE GESTIóN DE BASES DE

Más detalles

TALLER #5 ACCESS CONSULTAS. objeto Consulta en la vista lateral izquierda de la ventana Base de datos. Aparece esta ventana.

TALLER #5 ACCESS CONSULTAS. objeto Consulta en la vista lateral izquierda de la ventana Base de datos. Aparece esta ventana. TALLER #5 ACCESS CONSULTAS Las consultas son los objetos de una base de datos que permiten recuperar datos de una tabla, modificarlos e incluso almacenar el resultado en otra tabla. TIPOS DE CONSULTAS

Más detalles

Primeramente estudiaremos la forma básica de la sentencia SELECT, que esta formado por:

Primeramente estudiaremos la forma básica de la sentencia SELECT, que esta formado por: Oracle básico (II): Creación y manejo de tablas Con el artículo anterior iniciamos una entrega de Oracle Básico comenzando con el tema de creación y manejo de tablas. Ahora pasaremos a estudiar la consulta

Más detalles

Diseño de Bases de Datos Bases de Datos Documentales Grao en Información e Documentación Curso 2013/2014

Diseño de Bases de Datos Bases de Datos Documentales Grao en Información e Documentación Curso 2013/2014 Bases de Datos Documentales Curso 2013/2014 Miguel Ángel Rodríguez Luaces Laboratorio de Bases de Datos Universidade da Coruña El proceso de diseño El último día... Los problemas de no utilizar un SGBD:

Más detalles

Taller SQL - SUP. Introducción al Lenguaje SQL. Claúsula Where. Sentencia Select Sentencia Insert Sentencia Update Sentencia Delete

Taller SQL - SUP. Introducción al Lenguaje SQL. Claúsula Where. Sentencia Select Sentencia Insert Sentencia Update Sentencia Delete Taller SQL - SUP Introducción al Lenguaje SQL. Sentencia Select Sentencia Insert Sentencia Update Sentencia Delete Claúsula Where Condiciones de Búsqueda Operadores de Comparación Rangos Listas Patrones

Más detalles

Crear BD en. Isis Bonet Cruz, PhD

Crear BD en. Isis Bonet Cruz, PhD Crear BD en Isis Bonet Cruz, PhD SQL Server Microsoft SQL Server es un sistema de administración y análisis de bases de datos relacionales de Microsoft para soluciones de comercio electrónico, línea de

Más detalles

Boletín de Problemas de la Asignatura II18 Bases de Datos. Ingeniería Informática Universitat Jaume I

Boletín de Problemas de la Asignatura II18 Bases de Datos. Ingeniería Informática Universitat Jaume I Boletín de Problemas de la Asignatura II18 Bases de Datos Ingeniería Informática Universitat Jaume I Ingeniería Informática. Universitat Jaume I II18 - Bases de Datos. Práctica 1 Práctica 1 Objetivos de

Más detalles

MANUAL DE SQL SERVER

MANUAL DE SQL SERVER MANUAL DE SQL SERVER Qué es SQL Server 10 Arquitectura Cliente/Servidor 10 Sistema de Gestión de Bases de Datos Relacionales 10 Transact-SQL 10 Plataformas de SQL Server 10 Integración de SQL Server con

Más detalles

SQL: Lenguaje de acceso a bases de datos

SQL: Lenguaje de acceso a bases de datos SQL: Lenguaje de acceso a bases de datos Israel Herraiz Universidad Politécnica de Madrid Israel Herraiz, UPM SQL: Lenguaje de acceso a bases de datos 1/88 Contenidos 1 Introducción a las bases de datos

Más detalles

Grupo Kybele, http://www.kybele.es/ Pág. 1

Grupo Kybele, http://www.kybele.es/ Pág. 1 Bases de Datos APUNTES PARA EL MANEJO DE SQL*Plus Para cualquier consulta a la sintaxis de las órdenes SQL o SQL*PLUS puede consultarse cualquier libro de ORACLE, o los manuales gratuitos en pdf o en línea

Más detalles

Guía práctica de SQL

Guía práctica de SQL Guía práctica de SQL Francisco Charte Ojeda Agradecimientos Introducción Qué es SQL? Aplicaciones de SQL Intérpretes de SQL Tipos de RDBMS Cómo usar este libro Convenciones tipográficas 1. El modelo relacional

Más detalles

SQL (Structured Query Language)

SQL (Structured Query Language) SQL (Structured Query Language) El lenguaje de consulta estructurado o SQL (por sus siglas en inglés Structured Query Language) es un lenguaje declarativo de acceso a bases de datos relacionales que permite

Más detalles

Consulta y manipulación de datos. El lenguaje SQL

Consulta y manipulación de datos. El lenguaje SQL Bloque 2 Consulta y manipulación de datos. El lenguaje SQL Como ya hemos visto en el bloque anterior, una base de datos relacional consiste en un conjunto de tablas, a cada una de las cuales se le asigna

Más detalles

select nombre from profesores where categoria='aso6';

select nombre from profesores where categoria='aso6'; 1 de 10 17/05/2013 14:00 Lecciones SQL > T11 Conjuntos Operaciones de conjuntos y MySQL Un operador sobre conjuntos combina el resultado de dos sentencias select en un único resultado. Dependiendo del

Más detalles

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 10. Álgebra Relacional

FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA. Tema 10. Álgebra Relacional FICHEROS Y BASES DE DATOS (E44) 3º INGENIERÍA EN INFORMÁTICA Tema 10. Álgebra Relacional 1.- Introducción. 2.- Una Sintaxis para el Álgebra Relacional. 3.- Asignación Relacional. 4.- Operaciones Tradicionales

Más detalles

3ra. Parte. Bases de Datos Relacionales

3ra. Parte. Bases de Datos Relacionales 3ra. Parte Bases de Datos Relacionales Lenguaje de consulta SQL Proyección Tabla 1 Selección Tabla 1 Tabla 1 Tabla 2 Unión Lenguaje SQL SELECT SELECT [TOP expresión [PERCENT] [ WITH TIES ] ]

Más detalles

Temario. Índices simples Árboles B Hashing

Temario. Índices simples Árboles B Hashing Temario Introducción y fundamentos Introducción a SQL Modelo Entidad / Relación Modelo relacional Diseño relacional: formas normales Consultas Cálculo relacional Álgebra relacional Implementación de bases

Más detalles

CONSULTAS BASICAS EN SQL SERVER

CONSULTAS BASICAS EN SQL SERVER CONSULTAS BASICAS EN SQL SERVER CONSULTAS DE SELECCION Las consultas de selección se utilizan para indicar al motor de datos que devuelva información de las bases de datos, esta información es devuelta

Más detalles

m046a Curso Consultando SQL Server 2005/2008 con Transact-SQL, 15 h

m046a Curso Consultando SQL Server 2005/2008 con Transact-SQL, 15 h L1. ANSI SQL SQL, STANDS STRUCTURED QUERY LANGUAGE ANSI SQL 9 2 ESTANDARD SQL LENGUAJE DBMS RELACIONALES SQL SERVER 2005/2008, DBMS MICROSOFT TRANSACT SQL (T-SQL) LENGUAJE SQL SERVER 2005/2008 T-SQL SE

Más detalles

SQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de SQL Datos (DML)

SQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de SQL Datos (DML) SQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de Datos Outline 1 Actualización, Inserción y Modificación 2 Consultas (Queries) 3 Renombramiento 4 Ordenamiento 5 Reuniones 6

Más detalles

SQL: Lenguaje de acceso a bases de datos

SQL: Lenguaje de acceso a bases de datos SQL: Lenguaje de acceso a bases de datos Israel Herraiz Universidad Politécnica de Madrid Israel Herraiz, UPM SQL: Lenguaje de acceso a bases de datos 1/92 Contenidos 1 Introducción a las bases de datos

Más detalles

Tema: SUBCONSULTAS Y CREACION DE VISTAS.

Tema: SUBCONSULTAS Y CREACION DE VISTAS. Base de datos I. Guía 6 1 Facultad: Ingeniería Escuela: Computación Asignatura: Base de datos I Tema: SUBCONSULTAS Y CREACION DE VISTAS. Objetivo Específico Definir que es una subsonsulta Utilizar vistas

Más detalles

LENGUAJE SQL. En Mysql se utiliza un subconjunto de SQL (update, insert into, delete, select, truncate,etc).

LENGUAJE SQL. En Mysql se utiliza un subconjunto de SQL (update, insert into, delete, select, truncate,etc). LENGUAJE SQL Un manejador de base de datos debe de contener lenguajes que permitan definir el modelos de los datos, este mismo es que permite crear la estructura de la base de datos. Lenguaje de Definicion

Más detalles

SERVICIO NACIONAL DE APRENDIZAJE SENA

SERVICIO NACIONAL DE APRENDIZAJE SENA SERVICIO NACIONAL DE APRENDIZAJE SENA GUÍA DE APRENDIZAJE SISTEMA INTEGRADO DE GESTIÓN Proceso Gestión de la Formación Profesional Integral Procedimiento Ejecución de la Formación Profesional Integral

Más detalles

2 Bloque de consulta básico

2 Bloque de consulta básico 2 Bloque de consulta básico En una base de datos relacional los datos son almacenados en estructuras de almacenamiento o tablas. Las dos operaciones básicas a llevar a cabo sobre una base de datos relacional

Más detalles

Consultas con combinaciones

Consultas con combinaciones UNIDAD 1.- PARTE 2 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Consultas con combinaciones Usando combinaciones (joins), se pueden

Más detalles

MÓDULO 1: ORGANIZACIÓN Y ESTRUCTURA DE LA INFORMACIÓN. Tema 3: Interrogación y explotación de datos. Leire Aldaz, Begoña Eguía y Leire Urcola

MÓDULO 1: ORGANIZACIÓN Y ESTRUCTURA DE LA INFORMACIÓN. Tema 3: Interrogación y explotación de datos. Leire Aldaz, Begoña Eguía y Leire Urcola MÓDULO 1: ORGANIZACIÓN Y ESTRUCTURA DE LA INFORMACIÓN Leire Aldaz, Begoña Eguía y Leire Urcola Índice del tema Introducción al lenguajes SQL Consultas en lenguaje SQL y QBE Predicados y funciones INTRODUCCIÓN

Más detalles

Curso SQL. Gestor de Bases de Datos Relacionales

Curso SQL. Gestor de Bases de Datos Relacionales Curso SQL. Gestor de Bases de Datos Relacionales Titulación certificada por EUROINNOVA BUSINESS SCHOOL Curso SQL. Gestor de Bases de Datos Relacionales Curso SQL. Gestor de Bases de Datos Relacionales

Más detalles

MS_20461 Querying Microsoft SQL Server

MS_20461 Querying Microsoft SQL Server Gold Learning Gold Business Intelligence Silver Data Plataform www.ked.com.mx Por favor no imprimas este documento si no es necesario. Introducción. Este curso proporciona a los estudiantes las habilidades

Más detalles

Conceptos Avanzados de Bases de datos

Conceptos Avanzados de Bases de datos Página 1 Conceptos Avanzados de Bases de datos (1) Introducción a las Bases de Datos (2) Lenguaje Estándar de Consultas SQL Definición formal SQL Página 2 Es un conjunto exhaustivo (en su modelización

Más detalles

Entrarás a formar parte de nuestra bolsa de empleo a la que acuden las empresas en busca de nuestros alumnos.

Entrarás a formar parte de nuestra bolsa de empleo a la que acuden las empresas en busca de nuestros alumnos. CURSO PROFESIONAL DE TRANSACT-SQL MÁSTER EN DESARROLLO DE APLICACIONES WEB CON JAVA ENTERPRISE EDITION Precio: 450 Euros y Matrícula Gratis. Modalidad: Presencial en nuestras aulas. Valores añadidos: Nuestro

Más detalles

BASE DE DATOS TIPOS DE DATOS, VARIABLES, OPERADORES Y CONTROLES EN SQL SERVER

BASE DE DATOS TIPOS DE DATOS, VARIABLES, OPERADORES Y CONTROLES EN SQL SERVER BASE DE DATOS TIPOS DE DATOS, VARIABLES, OPERADORES Y CONTROLES EN SQL SERVER 2005 3 C O N T E N I D O 1. Tipos de datos 2. Variables 3. Operadores 4. Controles O B J E T I V O S Proporcionar al lector

Más detalles

SQL. Orígenes y Evolución

SQL. Orígenes y Evolución SQL 1 SQL. Orígenes y Evolución 2 SQL: Estándar oficial 3 Funciones de SQL DDL Data Definition Language Creación n de estructuras de la base de datos Integridad de los datos DML Data Manipulation Language

Más detalles

PARTE I LENGUAJE SQL. GESTION DE DATOS

PARTE I LENGUAJE SQL. GESTION DE DATOS PARTE I LENGUAJE SQL. GESTION DE DATOS Tema 1. EL LENGUAJE DE GESTIÓN DE BASES DE DATOS... 3 1 Bases de datos... 3 1.1 - Lenguaje de gestión de bases de datos... 3 1.2 - Qué es una Base de Datos?... 3

Más detalles

SQL SQL. Índice. Componentes. Objetivos

SQL SQL. Índice. Componentes. Objetivos Estándar En 1986, ANSI (American National Standard Institute) definión un estándar para (Structured Query Language) que fue posteriormente adoptado en 1987 como estándar internacional por ISO (International

Más detalles

ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS E INFORMÁTICA

ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS E INFORMÁTICA ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS E INFORMÁTICA SQL Y MODELAMIENTO DE DATOS SQL SERVER 2012 I.- PRESENTACIÓN: El Curso está dirigido a estudiantes de la carrera profesional de Ingeniería de

Más detalles

Introducción Microsoft SQL Server 2000 Qué puede hacer con SQL Server 2000? Qué necesita saber para usar SQL Server 2000?

Introducción Microsoft SQL Server 2000 Qué puede hacer con SQL Server 2000? Qué necesita saber para usar SQL Server 2000? Introducción Microsoft SQL Server 2000 Qué puede hacer con SQL Server 2000? Qué necesita saber para usar SQL Server 2000? Cómo usar este libro Estructura del libro Ejemplos Convenciones tipográficas 1.

Más detalles

Tema 3 Modelo relacional

Tema 3 Modelo relacional Contenido: Bases de Datos y Sistemas de Información Ing. Informática GRUPO A Tema 3 Modelo relacional 3.1 Terminología del modelo relacional 3.2 Paso del modelo ER al modelo relacional 3.3 Creación de

Más detalles

Modelos y Bases de Datos

Modelos y Bases de Datos Modelos y Bases de Datos MODELOS Y BASES DE DATOS 1 Sesión No. 12 Nombre: Lenguaje SQL: Valores Nulos Contextualización Qué más ofrece el lenguaje SQL? Así como te has introducido en el desarrollo de la

Más detalles

EJERCICIOS RESUELTOS Y COMENTADOS PARA EL APRENDIZAJE DE LA INSTRUCCIÓN SELECT

EJERCICIOS RESUELTOS Y COMENTADOS PARA EL APRENDIZAJE DE LA INSTRUCCIÓN SELECT 1 EJERCICIOS RESUELTOS Y COMENTADOS PARA EL APRENDIZAJE DE LA INSTRUCCIÓN SELECT 1. Conociendo la base de datos... 3 1.1. Conexión con la línea de comando... 3 1.2. Conexión con el Administrador... 3 1.3.

Más detalles

3. El catálogo 26. Laboratorio de Bases de Datos

3. El catálogo 26. Laboratorio de Bases de Datos ÍNDICE Continuación SQL Índice 1. Continuación del SQL como DML (Lenguaje de Manipulación de Datos) 1 1.1. Inserción de datos................................. 1 1.2. Borrado de datos..................................

Más detalles

Proyecto de Innovación Docente: Guía multimedia para la elaboración de un modelo econométrico.

Proyecto de Innovación Docente: Guía multimedia para la elaboración de un modelo econométrico. 1 Primeros pasos en R. Al iniciarse R (ver Figura 16), R espera la entrada de órdenes y presenta un símbolo para indicarlo. El símbolo asignado, como puede observarse al final, es > Figura 16. Pantalla

Más detalles

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos

El Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos Grupo de Bases de Datos Avanzadas Univ. Carlos III de Madrid Índice V.1 Introducción V.1 SQL como Lenguaje de V.1.1 Definición del esquema V.1.2 Evolución del esquema V.2 SQL como Lenguaje de Manipulación

Más detalles

m046a Curso Consultando SQL Server 2005/2008 con Transact-SQL, 15 h

m046a Curso Consultando SQL Server 2005/2008 con Transact-SQL, 15 h Alias Nombres Tablas ( L19 ) UNA VEZ INDICADO SE UTI LIZAN EN LAS CONSULTAS, EN LUGAR DE ESCRIBIR EL NOMBRE COMPLETO DE LA TABLA SE INDICAN EN LA CLAÚSULA FROM PALABRA CLAVE OPCIONAL AS SINTAXIS [ FROM

Más detalles

SQL básico. SQL básico http://idesweb.es/ 1. Contenido

SQL básico. SQL básico http://idesweb.es/ 1. Contenido SQL básico http://idesweb.es/ 1 SQL básico El presente documento no tiene más aspiraciones que servir de recordatorio mínimo para las órdenes más básicas y en su mínima expresión. No es un manual de SQL

Más detalles

Codd propuso estos tres lenguajes como base teórica de cualquier lenguaje que quisiera cumplir con los requisitos formales del modelo.

Codd propuso estos tres lenguajes como base teórica de cualquier lenguaje que quisiera cumplir con los requisitos formales del modelo. 16/05/2012 1 Todo modelo de datos debe definir un lenguaje de definición de datos para crear las estructuras donde se almacenará la información y un lenguaje de manipulación de datos con el que acceder

Más detalles

UNIVERSIDAD AUTONOMA DE LOS ANDES UNIANDES LENGUAJE SQL. SQL es un estándar un lenguaje estructurado para consultas

UNIVERSIDAD AUTONOMA DE LOS ANDES UNIANDES LENGUAJE SQL. SQL es un estándar un lenguaje estructurado para consultas LENGUAJE SQL Que es SQL? SQL es un estándar un lenguaje estructurado para consultas SQL te permite acceder y manejar bases de datos SQL es un Estándar (ANSI American National Standards Institute) Que puede

Más detalles

Bases de datos: Sistemas de bases de datos:

Bases de datos: Sistemas de bases de datos: Bases de datos: Sistemas de bases de datos: Un sistema de bases de datos es básicamente un sistema para archivar en computador, es decir, es un sistema computarizado cuyo propósito general es mantener

Más detalles

PL/SQL. Con PL/SQL vamos a poder programar las unidades de programa de la base de datos Oracle:

PL/SQL. Con PL/SQL vamos a poder programar las unidades de programa de la base de datos Oracle: PL/SQL (Procedural Language/Structured Query Language) PL/SQL es el lenguaje de programación que proporciona Oracle para extender el SQL estándar con otro tipo de instrucciones y elementos propios de los

Más detalles

CICLO 01-2012. I. Objetivos. Qué el estudiante: Utilice las funciones que trae integradas el SQL Server 2008 Cree Funciones propias en Transact SQL

CICLO 01-2012. I. Objetivos. Qué el estudiante: Utilice las funciones que trae integradas el SQL Server 2008 Cree Funciones propias en Transact SQL CICLO 01-2012 UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLOGICOS ESCUELA DE COMPUTACION GUIA DE LABORATORIO Nº 6 Nombre de la practica: Funciones de Transact SQL Lugar de ejecución: Laboratorio de

Más detalles

Una vez creada la BD podemos pedirle a MySQL que nos muestre todas las BD existentes. Para eso utilizamos la siguiente instrucción:

Una vez creada la BD podemos pedirle a MySQL que nos muestre todas las BD existentes. Para eso utilizamos la siguiente instrucción: Guía de MySQL Contenidos: 1.- Introducción: 2.- Creación de una base de datos. CREATE DATABASE. 3.- Creación de una tabla y mostrar sus campos (CREATE TABLE - SHOW TABLES - describe - DROP TABLE) 4.- Instrucción

Más detalles

Se considera a Oracle como uno de los sistemas de bases de datos más completos, destacando su:

Se considera a Oracle como uno de los sistemas de bases de datos más completos, destacando su: CURSO DE ORACLE DESCRIPCIÓN Oracle es un sistema de gestión de base de datos relacional (o RDBMS por el acrónimo en inglés de Relational Data Base Management System), desarrollado por Oracle Corporation.

Más detalles

Tema 4. Manipulación de datos con SQL

Tema 4. Manipulación de datos con SQL Tema 4 Manipulación de datos con SQL Índice Tema 4 1. Inserción de registros. Consultas de datos anexados. 2. Modificación de registros. Consultas de actualización. 3. Borrado de registros. Consultas de

Más detalles

ÍNDICE PRIMERA PARTE... 17

ÍNDICE PRIMERA PARTE... 17 ÍNDICE PREFACIO... xv PRIMERA PARTE... 17 CAPÍTULO 1. BASES DE DATOS... 19 BASE DE DATOS RELACIONAL... 20 ESTRUCTURA MÍNIMA DE ALMACENAMIENTO... 21 EJEMPLO DE TABLA... 22 RESUMEN... 23 CAPÍTULO 2. CONSULTAS

Más detalles