SQL 1

download SQL 1

of 52

Transcript of SQL 1

BASE DE DATOS PARA APLICACIONESUniversidad Tecnolgica de San Juan del Ro Ingeniera en Tecnologas de la Informacin y Comunicacin 8 Cuatrimestre

MTI. Alejandro Csar Valencia Garca

BREVE HISTORIA Y DESCRIPCIN DE SQL La historia de SQL comienza en un laboratorio de IBM en San Jose, California a finales de los 70s. Fue desarrollado originalmente para DB2. SQL es el lenguaje estndar para manipular y obtener datos de bases de datos relacionales. SQL permite al programador o al administrador de base de datos (DBA) hacer lo siguiente:

MTI. Alejandro Csar Valencia Garca

BREVE HISTORIA Y DESCRIPCIN DE SQL Modificar la estructura de una base de datos

Modificar la configuracin de seguridad Aadir permisos de usuario en bases de datos o tablas Hacer consultas en una base de datos Actualizar los contenidos de una base de datos

MTI. Alejandro Csar Valencia Garca

SENTENCIAS: CONSULTASLa estructura bsicas de una consulta consiste en 3 clusulas:

Select: Se utiliza para listar los atributos deseados del resultado de una consulta. From: Lista las relaciones que deben ser analizadas en la evaluacin de la expresin. Where: engloba los atributos de las relaciones que aparecen en la clusula from. Esta clusula es opcional.MTI. Alejandro Csar Valencia Garca

SENTENCIAS: CONSULTASEjemplos:

select * from clientes; select numpedido, total from pedidos; select distinct nombre from datos; SQL permite duplicados en los resultados, pero si se desea eliminar duplicados, se emplea la palabra clave distinct.MTI. Alejandro Csar Valencia Garca

SENTENCIAS: CONSULTASTambin se puede emplear la palabra All para especificar explcitamente que no se eliminan duplicados. Sin embargo All est implcita en Select por lo que su utilizacin carece de sentido. Las siguientes sentencias obtienen los mismos resultados:

Select all nombre from datos; Select nombre from datos;

MTI. Alejandro Csar Valencia Garca

EXPRESIONES, CONDICIONES Y OPERADORESExpresiones.

La definicin de una expresin es simple: Una expresin retorna un valor. Los tipos de expresiones pueden abarcar tipos de datos como String, Numricos y Booleanos. Por ejemplo, en la siguiente sentencia, monto es una expresin que retorna el valor contenido en la columna o campo monto: Select monto from pagos;MTI. Alejandro Csar Valencia Garca

EXPRESIONES, CONDICIONES Y OPERADORESCondiciones.

Si lo que deseas es encontrar un elemento o grupo de elementos en particular en tu base de datos, requieres de una o ms condiciones. Estas se agregan en la clusula where. Las condiciones te permiten hacer consultas especficas. En su forma ms comn, incluyen una variable, una constante y un operador de comparacin. Ejemplo: Select nombre, apellido, domicilio from clientes where apellido=Perez;MTI. Alejandro Csar Valencia Garca

EXPRESIONES, CONDICIONES Y OPERADORESOperadores.

Son los elementos que se usan dentro de una expresin para determinar cmo deseas armar tu condicin para obtener los datos. Hay seis tipos de operadores: aritmticos, de comparacin, de carcter, lgicos, de conjunto y miscelneos.Los operadores aritmticos son: Suma (+), resta (-), divisin (/), multiplicacin (*) y mdulo (%). El operador mdulo obtiene el residuo de una divisin y slo se puede usar con valores enteros.MTI. Alejandro Csar Valencia Garca

EXPRESIONES, CONDICIONES Y OPERADORESEjemplo del operador suma.

Supongamos que tenemos una tabla de productos con su precio. Y queremos obtener un listado de los productos donde veamos su precio actual y un nuevo precio al que le agreguemos 100 pesos. La sentencia sera:Select producto, precio, precio+100 From productos;

MTI. Alejandro Csar Valencia Garca

EXPRESIONES, CONDICIONES Y OPERADORESEn el ejemplo anterior la salida nos agrega una columna virtual as:producto sabritas Coca-cola Precio 15 8 Precio+100 115 108

Si quisiramos cambiar el ttulo de la columna virtual a Total, la sentencia sera:

Select producto, precio, (precio+100) total From productos;MTI. Alejandro Csar Valencia Garca

EXPRESIONES, CONDICIONES Y OPERADORESEjemplo del operador resta.

Este operador tiene dos usos posibles. Uno es para cambiar el signo de un nmero. Supongamos que tenemos una tabla de temperaturas como esta:estado maxima minima

QRO HGOGTO

28 2432

2 -46

MTI. Alejandro Csar Valencia Garca

EXPRESIONES, CONDICIONES Y OPERADORESEsta sentencia manipulara los datos cambiando su signo:

Select estado, -maxima, -minima From temperaturas;La salida sera:estado QRO HGO maxima -28 -24 minima -2 4

GTO

-32

-6

MTI. Alejandro Csar Valencia Garca

EXPRESIONES, CONDICIONES Y OPERADORESEl otro uso es el de una resta normal. Por ejemplo:

Select estado, maxima, minima, (maxima-minima) diferencia From temperaturas;Nos dara:estado QRO HGO maxima 28 24 minima 2 -4 Diferencia 26 28

GTO

32

6

26

MTI. Alejandro Csar Valencia Garca

EXPRESIONES, CONDICIONES Y OPERADORESEjemplo de los operadores divisin y multiplicacin.

Estos operadores tiene solamente su funcin obvia.Ejemplos: Select producto,precio,(precio*0.20) descuento From productos;

Select producto,precio,(precio/2) mitadprecio From productos;MTI. Alejandro Csar Valencia Garca

EXPRESIONES, CONDICIONES Y OPERADORESOperadores de Comparacin.

Se utilizan para comparar expresiones y pueden retornar uno de tres posibles valores: TRUE, FALSE o UNKNOWN (desconocido).Para entender el concepto de Unknown, es algo similar a NULL. En bases de datos, NULL es la ausencia de datos en un campo (que no es lo mismo a cero o espacio en blanco). Si haces una comparacin como CAMPO=9 y hay un NULL, la comparacin retorna un UNKNOWN.

MTI. Alejandro Csar Valencia Garca

EXPRESIONES, CONDICIONES Y OPERADORESLa mayora de las implementaciones proveen un operador especial llamado IS NULL para probar una condicin NULL. Por ejemplo, si queremos obtener los valores nulos de un campo precio en la tabla de productos la sentencia sera:

Select * from productos where precio is null;

MTI. Alejandro Csar Valencia Garca

EXPRESIONES, CONDICIONES Y OPERADORESEjemplo de uso del operador de comparacin igual (=)

Supongamos que tenemos una tabla llamada Amigos con los siguientes datos:id 12 3 4

nombre JUANPEDRO LUIS MARIA

apaterno PEREZCHAVEZ MACIAS MORALES

amaterno LOPEZJUAREZ AGUILAR GUTIERREZ

telefono 129-2000219-0876 222-3344

MTI. Alejandro Csar Valencia Garca

EXPRESIONES, CONDICIONES Y OPERADORESLa siguiente sentencia:

Select * from amigos where nombre=JUAN;Nos dara este resultado:id 1 nombre JUAN apaterno PEREZ amaterno LOPEZ telefono 129-2000

MTI. Alejandro Csar Valencia Garca

EXPRESIONES, CONDICIONES Y OPERADORESLos otros operadores de comparacin son:

> >= < 5;

MTI. Alejandro Csar Valencia Garca

FUNCIONESSUM Retorna la suma de todos los valores en una columna. Por ejemplo, para obtener el total de goles anotados por todos los jugadores la sentencia sera: Select SUM(goles) totalgoles From Futbol;

MTI. Alejandro Csar Valencia Garca

FUNCIONESAVG Retorna el promedio de una columna Por ejemplo, para obtener el promedio de tarjetas amarillas de todos los jugadores, la sentencia sera: Select AVG(tarjetasamarillas) promediotarjetas From Futbol;

MTI. Alejandro Csar Valencia Garca

FUNCIONESMAX Retorna el valor ms grande de una columna Por ejemplo, para obtener el nmero ms alto de goles obtenidos por un goleador, la sentencia sera: Select MAX(goles) goleador From Futbol;

MTI. Alejandro Csar Valencia Garca

FUNCIONESMIN Retorna el valor ms pequeo de una columna Por ejemplo, para obtener el nmero menor de tarjetas rojas obtenidas por un jugador, la sentencia sera: Select MIN(tarjetasrojas) menosrojas From Futbol;

MTI. Alejandro Csar Valencia Garca

FUNCIONESFunciones Estadsticas VARIANCE Retorna el cuadrado de la desviacin estndar STDDEV Obtiene la desviacin estndar de una columna de nmeros

MTI. Alejandro Csar Valencia Garca

PRCTICA 2 Seleccionar a todos los alumnos de primer turno y calcular el promedio de cada uno de todas las materias. Contar el numero de alumnos que hay inscritos por materia Buscar a los alumnos que tienen mas materias cursadas. Sumar el numero de hermanos que tienen todos los alumnos Buscar al alumno con al ms bajo promedio del segundo turno Buscar al alumno con el promedio mas alto de toda la institucin.MTI. Alejandro Csar Valencia Garca

PRCTICA 2 Buscar a los alumnos con los promedios mas altos de cada materia Contar el numero de materias por tipo. Listar los promedios de los alumnos del segundo turno del promedio mas alto al mas bajo Contar a los alumnos con la misma calificacin en informtica Contar al numero de alumnos por turno Promediar las calificaciones de los alumnos por turno Seleccionar a los alumnos del primer ciclo que no estn cursando lenguas.MTI. Alejandro Csar Valencia Garca

PRCTICA 2 Contar a los alumnos que cursan dibujo, pero no cursan informtica. Contar a los alumnos por poblacin de origen. Incluir el calculo de su promedio. Calcular el promedio de los alumnos que tengan como en algn apellido Garca.

MTI. Alejandro Csar Valencia Garca