Está en la página 1de 10

wi

ESCUELA SUPERIOR POLITCNICA DE CHIMBORAZO FACULTAD DE INFORMTICA Y ELECTRNICA Base de Datos

1.- DATOS INFORMATIVOS:


FECHA DE PRESENTACIN: NOMBRE: Daniela Carrasco Jueves 13 de Junio del 2013. CDIGO: 547

CURSO: Cuarto B. PROFESORA: Ing. Blanca Hidalgo.

2.- TEMA:
COMANDOS SQL

3.- OBJETIVOS:
Generales: Obtener un conocimiento ms amplio y detallado acerca de los diferentes tipos de Comandos que posee el SQL server. Analizar sus principales funciones, para una mejor comprensin. Especficos: Investigar los comandos enviados, para un mejor conocimiento y utilizacin de nuestro programa SQL server. Compartir los conocimientos adquiridos para una mejor comprensin. Comprender la correcta escritura de nuestros comandos a investigar.

4.- INTRODUCCIN:
Existen diferentes tipos de programas para proyectar una base de datos, como por ejemplo: Mysql, SQL server, Oracle, Acces entre otros. En nuestra presente consulta vamos a trabajar con el uso de SQL server que es un Lenguaje de Consulta Estructurada, que define y maneja datos en una base de datos relacional. En una base de datos relacional, los datos son almacenados en tablas. Una tabla es un conjunto de filas y columnas. El SQL es un lenguaje de Bases de Datos Normalizado, es utilizado para recuperar o actualizar datos mediante la especificacin de columnas, tablas y diversas relaciones que entre ellas existen.

ESCUELA SUPERIOR POLITCNICA DE CHIMBORAZO FACULTAD DE INFORMTICA Y ELECTRNICA Base de Datos Las sentencias de SQL se ejecutan mediante un gestor de bases de datos. Un gestor de bases de datos es un programa de software que maneja los datos. El lenguaje SQL est compuesto por diferentes tipos de comandos (create, drop, alter, select, insert, update, delete), clusulas(from, where, group by, having, order by), operadores lgicos (and, or, not) y de comparacin (<, >, =, like, in...), consultas con PREDICADOS CUANTIFICADOS (all, any, some), FUNCIONES CON CADENAS (str, upper, replace, len, entre otros) y funciones de agregado(avg, count, max, min, sum), las cuales se combinan en las instrucciones para crear, actualizar y manipular las base de datos. Cuando se comprende el significado de estos comandos las consultas, tanto consultas internas o SUBCONSULTAS, y externas, pueden verse bastante sencillas y realizar muchas operaciones contra la base datos con mucha facillidad.

5.- MARCO TERICO:


PREDICADOS CUANTIFICADOS:

Entenderemos por predicado a una expresin que especifica una condicin entre valores (de columnas, entre otros) cuya evaluacin ser verdadero, falso o desconocido. La condicin se considerar satisfecha nicamente para verdadero. Un predicado aparece en la clusula WHERE o en la clusula HAVING de SELECT. Es en la clusula WHERE donde especificamos las condiciones que debe cumplir lo que estamos buscando. Entre uno de los posibles predicados a usar en la condicin de bsqueda estn los PREDICADOS CUANTIFICADOS. Los Predicados cuantificados (ALL, SOME, ANY), permiten que el resultado de la SELECT subordinada tenga ms de un valor si viene precedida por alguna de estas palabras. El resultado de la SELECT subordinada debe ser una tabla con una sola columna y cero o ms filas.
o

Cuantificador ALL: El predicado es verdadero si la comparacin es verdadera para todos los valores devueltos por la SELECT subordinada; es falso si para algn valor no nulo se obtiene falso en la comparacin (tambin puede serlo si algn valor es nulo), y desconocido si para todo valor no nulo devuelve cierto la comparacin. El predicado cuantificado <>ALL es equivalente al predicado NOT IN.

ESCUELA SUPERIOR POLITCNICA DE CHIMBORAZO FACULTAD DE INFORMTICA Y ELECTRNICA Base de Datos Ejemplo:

El ejemplo siguiente utiliza una subconsulta y una comparacin > ALL para determinar el nombre y la profesin de los empleados que ganan ms que todos los jefes de departamento: SELECT LASTNAME, JOB FROM EMPLOYEE WHERE SALARY > ALL (SELECT SALARY FROM EMPLOYEE WHERE JOB=MANAGER) El predicado ALL se utiliza para recuperar nicamente aquellos registros de la consulta principal que satisfacen la comparacin con todos los registros recuperados en la subconsulta.
o

Cuatificadores SOME, ANY: El predicado es verdadero si la comparacin es verdadera para alguno de los valores devueltos por la SELECT subordinada, y falso si la SELECT devuelve una tabla vaca, o si la comparacin devuelve falso en todos los valores de la SELECT subordinada. Ejemplo: El ejemplo siguiente devuelve todos los productos cuyo precio unitario es mayor que el de cualquier producto vendido con un descuento igual o mayor al 25 por ciento: SELECT * FROM Productos WHERE PrecioUnidad > ANY (SELECT PrecioUnidad FROM DetallePedido WHERE Descuento >= 0 .25)

ESCUELA SUPERIOR POLITCNICA DE CHIMBORAZO FACULTAD DE INFORMTICA Y ELECTRNICA Base de Datos SUBCONSULTAS (Select con subconsultas): Cuando escribe una sentencia SELECT de SQL, puede colocar sentencias SELECT adicionales dentro de la clusula WHERE. Cada SELECT adicional inicia una subconsulta. A su vez, una subconsulta puede incluir otra subconsulta separada, cuyo resultado se coloca en la clusula WHERE de la subconsulta original. Adems, una clusula WHERE puede incluir subconsultas en ms de una condicin de bsqueda. La subconsulta puede hacer referencia a tablas y columnas que son diferentes de las utilizadas en la consulta principal. En sntesis, una subconsulta es una instruccin SELECT anidada dentro de una instruccin SELECT, SELECTINTO, INSERTINTO, DELETE, o UPDATE o dentro de otra subconsulta. Una subconsulta puede reemplazar una expresin. Los formatos para las instrucciones de subconsultas son las siguientes:

WHERE expression [NOT] IN (subconsulta):


En el proceso de trabajo con subconsultas, en necesario manejar dos tipos de consultas: consultas internas y consultas externas. Las consultas internas no es ms que las subconsultas propiamente dichas y las consultas externa es aquella que hace uso de los resultados devueltos por la consulta interna o subconsulta. En todo este rollo, tambin se harn uso del predicado IN. La consulta externa usa el predicado IN para operar con los valores devueltos por la subconsulta.

Ejemplo:

WHERE expression operador_comparacion [ANY | ALL] (subconsulta):


Se puede usar el predicado ANY o SOME, para recuperar registros de la consulta principal, que satisfagan la comparacin con cualquier otro registro recuperado en la subconsulta.

Ejemplo:

ESCUELA SUPERIOR POLITCNICA DE CHIMBORAZO FACULTAD DE INFORMTICA Y ELECTRNICA Base de Datos

WHERE [NOT] EXISTS (subconsulta):

Cuando se presenta una subconsulta con la palabra clave EXISTS, funciona como una prueba de existencia. La clusula WHERE de la consulta externa comprueba la existencia de las filas devueltas por la subconsulta. La subconsulta en realidad no produce ningn dato, devuelve el valor TRUE oFALSE.
Ejemplo:

Una subconsulta puede devolver: 1. Una sola columna o un solo valor en cualquier lugar en donde pueda utilizarse una expresin de un slo valor y puede compararse usando los siguientes operadores: =,<,>,<=,>= ,<>,!> y !<. 2. Una sola columna o muchos valores que se pueden utilizar con el operador de comparacin de listas IN en la clusula WHERE. 3. Muchas filas que pueden utilizarse para comprobar la existencia, usando la palabra EXISTS en la clusula WHERE.

FUNCIONES CON CADENAS: Microsoft SQL Server tiene algunas funciones para trabajar con cadenas de caracteres.

ESCUELA SUPERIOR POLITCNICA DE CHIMBORAZO FACULTAD DE INFORMTICA Y ELECTRNICA Base de Datos Estas funciones escalares realizan una operacin sobre un valor de cadena de entrada y devuelven un valor de cadena o un valor numrico. Las funciones de cadena trabajan con campos char y varchar por lo que los literales que escribamos se deben encerrar entre comillas simples. Estas funciones pueden manipular cadenas de letras u otros caracteres por lo que son divididos en dos diferentes grupos: Funciones que devuelven caracteres Este tipo de funciones devuelven un carcter o varios caracteres. Funcin CHR(n) CONCAT(cad1, cad2) UPPER(cad) LOWER(cad) LPAD(cad1,n[,cad2]) Propsito Nos devuelve el carcter cuyo valor en binario es n Nos devuelve cad1 concatenada con cad2 Convierte cad a maysculas Convierte cad a minsculas Con esta funcin aadimos caracteres a cad1 por la izquierda hasta una longitud mxima dada por n Convierte la primera letra de cad a mayscula Elimina un conjunto de caracteres a la izquierda de cad, siendo set el conjunto de caracteres a eliminar Con esta funcin aadimos caracteres de la misma forma que con la funcin LPAD pero esta vez los aadimos a la derecha Hace lo mismo que LTRIM pero por la derecha Sustituye un conjunto de caracteres de 0 o ms caracteres, devuelve cad con cada ocurrencia de

INITCAP(cad) LTRIM(cad [,set])

RPAD(cad1, n[,cad2])

RTRIM(cad[,set]) REPLACE(cad,cadena_buscada [,cadena_sustitucion] )

ESCUELA SUPERIOR POLITCNICA DE CHIMBORAZO FACULTAD DE INFORMTICA Y ELECTRNICA Base de Datos cadena_buscada sustituida por cadena_sustitucion Devuelve la subcadena de cad que abarca desde m hasta el numero de caracteres dados por n. Convierte caracteres de una cadena en caracteres diferentes. Devuelve cad1 con los caracteres encontrados en cad2 y sustituidos por los caracteres de cad3

SUBSTR(cad, m[,n])

TRANSLATE(cad1,cad2,cad3)

Ejemplos: Sentencia sql que nos devuelve las letras cuyo valor asccii es el 45 y el 23: Select CHR(45), CHR(23) FROM TABLA; Sentencia sql que obtiene el nombre de los alumnos sacando por pantalla la siguiente frase: el nombre del alumno es (nombre que est almacenado en la tabla) Select CONCAT ('el nombre de alumno es', nombre) From alumno; Sentencia sql que me devuelve los nombres de los alumnos en maysculas: Select UPPER(nombre) From alumno;

Sentencia sql que obtiene de un campo nombre, las 3 primeras letras: Select SUBSTR(nombre,0,3) From alumno;

Funciones que devuelven valores numricos

ESCUELA SUPERIOR POLITCNICA DE CHIMBORAZO FACULTAD DE INFORMTICA Y ELECTRNICA Base de Datos Estas funciones nos devuelven nmeros a modo de informacin.

Funcin ASCII(cad) INSTR(cad1, cad2[,comienzo[,m]])

LENGTH(cad)

Propsito Devuelve el valor ASCII de la primera letra de cad Funcin que busca un conjunto de caracteres dentro de una cadena. Nos devuelve la posicin de cad2 en cad1 empezando a buscar en comienzo Devuelve en nmero de caracteres de cad

Ejemplos:

Sentencia sql que nos devuelve el valor ASCII de la letra ('s'): Select ASCII('s') From tabla; Sentencia que nos devuelve la posicin de la ocurrencia 'pe' dentro de la cadena 'Los perros estn bien' a partir de la posicin 2: Select INSTR('Los perros estn bien','pe',2) From tabla;

Sentencia sql que nos devuelve el numero de caracteres de los nombres de los alumnos: Select LENGTH(nombre) From alumnos;

6.- CONCLUSIONES:
Mediante el presente trabajo de investigacin acerca de los comandos a investigar que posee nuestro programa SQL, pudimos comprender mejor su utilidad. Despus de haber realizado la consulta pudimos cumplir con nuestro objetivo de obtener una amplia comprensin acerca de la correcta utilizacin de nuestro programa SQL. 7.- RECOMENDACIONES:

ESCUELA SUPERIOR POLITCNICA DE CHIMBORAZO FACULTAD DE INFORMTICA Y ELECTRNICA Base de Datos Analizar la informacin recopilada una vez terminado el trabajo, si es necesario volverlo a leer para poder aclarar dudas y estar en capacidad de presentar un excelente informe. Leer y analizar cuidadosamente la informacin y trminos que se nos presenta en el transcurso de nuestra consulta ya que en nuestra bsqueda muchos datos pueden ser incorrectos. 8.- BIBLIOGRAFA: [1] Iniciacin al SQL. Disponible en: ftp://ftp.software.ibm.com/ps/products/db2/info/vr7/pdf/letter/nlv/db2y0z70.p df [2] Subconsultas para SQL server. Disponible en: http://www.elguille.info/colabora/NET2005/Percynet_Subconsultas_en_SQL_S erver.htm [3] La Sentencia Select: Disponible en: http://www.formauri.es/arrobamasmas/Cursos/index.php?apdo=05&curso=50 &cap=2 [4] Consultas y Subconsultas en SQL server. Disponible en: http://www.misistemaweb.com/consultas-y-subconsultas-en-sql-server-a-420.html [5] Funciones de Cadena en SQL. Disponible en: http://www.desarrolloweb.com/articulos/funciones-cadena-sql.html [6] Funciones de Cadena en SQL server. Disponible en: http://undiati.com/2011/08/01/funciones-cadena-esql-server/