9
UNIVERSIDAD REGIONAL AUTONOMA DE LOS ANDES SISTEMAS MERCANTILES NOMBRES: DIEGO BLADIMIR APELLIDOS: SANCHEZ PEREZ ASIGNATURA: CLIENTE - SERVIDOR TUTOR: ING. LUIS GUALPA TEMA: CONSULTAS SQL FECHA: 23/12/2013 1 7mo Sistemas

Clente servidor consultas sql

Embed Size (px)

Citation preview

Page 1: Clente servidor consultas sql

UNIVERSIDAD REGIONAL AUTONOMA DE LOS ANDES SISTEMAS MERCANTILES

NOMBRES:DIEGO BLADIMIR

APELLIDOS:SANCHEZ PEREZASIGNATURA:

CLIENTE - SERVIDORTUTOR:

ING. LUIS GUALPATEMA:

CONSULTAS SQLFECHA:

23/12/2013

17mo Sistemas

Page 2: Clente servidor consultas sql

27mo Sistemas

Escribir sentencias SQL SELECT para consultas con operadores derestricción, proyección y enlace.

La sentencia SELECT nos permite consultar los datos almacenados en una tabla de la base de datos.

select * from temas t1, temas t2;

Page 3: Clente servidor consultas sql

7mo Sistemas 3

Combinamos producto cartesiano, selección y proyección select * from temas as t1, temas as t2 where t1.super=t2.id;

select t1.ID as ID, t1.Descripción as Tema, t2.Descripción as Asignatura from temas as t1, temas as t2 where t1.super=t2.id;

Page 4: Clente servidor consultas sql

7mo Sistemas 4

Escribir sentencias SELECT para enlaces que incluyen tres o mástablas, auto enlaces y múltiples enlaces entre tablas.

Supongamos que queremos conseguir una lista con los empleados y los departamentos para losque trabajan. Esta información está repartida en las dos tablas que tenemos, emp y dep. Así,podríamos intentar una consulta que seleccionara el campo nombre de la tabla emp yel nombre del departamento. Y aquí surge el primer problema, ¿cómo distinguimos entre doscolumnas que llamándose igual, pertenecen a tablas distintas

Ejemplos

select titulo,a.nombre,e.nombrefrom autores as aright join libros as lcodigoautor=a.codigojoin editoriales as e oncodigoeditorial=e.codigo;

solicitamos el título, autor y editorial de todos los libros que encuentren o no coincidenciacon "autores" ("right join") y a ese resultado lo combinamos con "editoriales", encuentren ono coincidencia.Las tablas deben tener claves externas relacionadas con las tablas a combinar.

Page 5: Clente servidor consultas sql

7mo Sistemas 5

Entender y ejemplificar el propósito de la cláusula GROUP BYusando el proceso de evaluación conceptual.

SQL nos permite agrupar las filas resultado de una consulta enconjuntos y aplicar funciones sobre esos conjuntos de filas.

SELECT {* | {columna,}+}

FROM {tabla,}+

WHERE condición GROUP BY {columna ,}+

HAVING condición

ORDER BY {expresión Columna [ASC | DESC],}+;

Ejemplo

•WHERE filtra las filas

•GROUP BY crea una tabla de grupo nueva

•HAVING filtra los grupos

•ORDER BY clasifica la salida

Page 6: Clente servidor consultas sql

7mo Sistemas 6

Escribir descripciones en español en sentencias documentadas deSQL.

Page 7: Clente servidor consultas sql

7mo Sistemas 7

Escribir las sentencias INSERT, UPDATE y DELETE para modificar lasfilas de una tabla.

Insertar nuevos registros en una tabla copiando los datos que ya están guardadosen otras tablas utilizando como entrada el resultado de una consulta realizadacon la sentencia SELECT. La sintaxis es la siguiente:

1 INSERT INTO nombre_tabla (lista de campos separados por comas) sentencia SELECT

La sentencia SELECT debe tener y devolver el mismo número de columnas y delmismo tipo que la lista de columnas del esquema de la tabla.

1 INSERT INTO clientes_lugo SELECT * FROM clientes WHERElocalidad = 'Lugo';

Page 8: Clente servidor consultas sql

7mo Sistemas 8

La sentencia UPDATE permite modificar los datos almacenados enlas tablas. La sintaxis de la sentencia UPDATE es esta

1

2

3

UPDATE nombre_tablaSET campo1 = valor1,campo2 = valor2,...campoN = valorMWHERE condiciones

funcionamiento de la sentencia UPDATE con SELECT:

1

2

UPDATE EMPLEADOS SET SALARIO = SALARIO * 1.02PRECIO_HORA = PRECIO_HORA * 1.01WHERE SALARIO < 3000

Page 9: Clente servidor consultas sql

7mo Sistemas 9

la sentencia DELETE se pueden borrar registros de dos o más tablasa la vez, por ejemplo con la siguiente estructura:

1 DELETE clientes, pedidos FROM clientes JOIN pedidos WHERE clientes.id_cliente = pedidos. id_cliente ANDclientes.id_cliente = 5;

Si las sentencias UPDATE y DELETE afectan a varias tablas no sepueden utilizar las clausulas ORDER BY y LIMIT.

Si no se utiliza la cláusula WHERE en las sentencias UPDATE yDELETE esto afectara a todas las filas.