22
1 Alberto Ruiz www.albertoruiz.es SQL Básico para Aplicaciones Educativas

Sql basico

Embed Size (px)

DESCRIPTION

sql

Citation preview

Page 1: Sql basico

1

Alberto Ruizwww.albertoruiz.es

SQL Básico para

Aplicaciones Educativas

Page 2: Sql basico

2

Elementos de la base de datos

TABLA: Estructura de datos con información homogénea. Se compone de filas y columnas

Una base de datos relacional es un conjunto de tablas relacionadas entre sí.

Page 3: Sql basico

3

Elementos de la base de datos

TABLA

Registros

Campos

Page 4: Sql basico

4

Lenguaje SQL

¿Para qué sirve?

SELECT INSERTUPDATEDELETEDROP

El único inofensivo es SELECT

Page 5: Sql basico

5

Introducir consultas SQL

Escuela Consultas > Nueva > Experto

IES2000 F8

Page 6: Sql basico

6

Nombres de las Tablas

Escuela Consulta > Nueva > Guiado

IES2000 F6

Page 7: Sql basico

7

La consulta más sencilla

Consultar a una tabla SELECT * FROM ALUMNOS

Coger solo ciertos campos SELECT Nombre+" "+Apellidos FROM ALUMNOS

Pedro es de Lerma (Burgos)

Page 8: Sql basico

8

Filtrando registros con WHERE

Sin WHERE, coge todos los registrosCon WHERE puedo coger aquellos que

cumplan ciertas condiciones

SELECT * FROM ALUMNOS WHERE Localidad = ‘Burgos’ AND Fecha_Nacimiento > {06/30/1990} (en IES2000)

SELECT * FROM ALUMNOS WHERE Loca = ‘Burgos’ AND F_Naci > “06/30/1990” (en Programa Escuela)

Page 9: Sql basico

9

Ordenando

ORDER BY permite ordenar alfabéticamente por campos

SELECT * FROM ALUMNOS WHERE Localidad = ‘Burgos’ AND Fecha_Nacimiento > {06/30/1990} ORDER BY Localidad DESC, Apellidos, Nombre

Page 10: Sql basico

10

IN

La cláusula IN permite especificar una lista en una cláusula WHERE

SELECT * FROM ALUMNOS WHERE Localidad IN (‘Burgos’, ‘Lerma’,’Briviesca’)

Page 11: Sql basico

11

Subconsultas

Permiten crear una lista para una cláusula IN mediante una consulta

SELECT * FROM alumnos WHERE matricula IN (SELECT matricula FROM matricul WHERE anno=2007)

Page 12: Sql basico

12

Consultas a dos tablas

Una consulta a dos tablas da como resultado el producto de ambas

El producto de dos tablas es otra tabla con todos los campos de las dos tablas, repitiendo la segunda tabla tantas veces como registros tiene la primera.

Es necesario filtrar con WHERE por un campo común a ambas tablas.

IES2000: SELECT nombre, grupo FROM alumnos,matricul WHERE alumnos.matricula=matricul.matricula and anno=2007

Page 13: Sql basico

13

Ejemplos 2 tablas IES2000

Docentes actuales SELECT nombre FROM profesor, docentes

WHERE profesor.codigo=docentes.codigo AND docentes.anno=2007

Alumnos de 2CSELECT nombre, grupo FROM alumnos, matricul

WHERE alumnos.matricula=matricul.matricula AND matricul.grupo='2C' and matricul.anno=2007

Page 14: Sql basico

14

Ejemplos 2 tablas IES2000

Notas finales de 2CSELECT matricul.matricula, grupo, materia,nota

FROM matricul, notas WHERE matricul.matricula=notas.matricula AND matricul.grupo='2C' and notas.evaluacion='F' and notas.anno=2007 and matricul.anno=2007

Page 15: Sql basico

15

Funciones agregadas

COUNTSUMAVGMAXMIN

GROUP BYHAVING

Page 16: Sql basico

16

Ejemplos F. agregadas IES2000

Número de alumnos por localidad

SELECT localidad_nacimiento, COUNT (localidad_nacimiento) FROM alumnos GROUP BY localidad_nacimiento HAVING COUNT(localidad_nacimiento)>3 ORDER BY COUNT(localidad_nacimiento) DESC

Nota media de un alumnoSELECT AVG(VAL(nota)) FROM notas WHERE

anno=2007 AND evaluacion='F' AND matricula=671

Page 17: Sql basico

17

Ejemplos Funciones agregadas

Calcular la edad de un alumnoCalcular la media de la edad de los

alumnosContar el número de alumnos

extranjerosContar el número de alumnos mayores

de edadContar el número de alumnos de un

grupo con tres o más suspensos

Page 18: Sql basico

18

Exportar a Excel

Escuela Icono disquete > Tipo XLS

IES2000 Exportar > Paradox

Page 19: Sql basico

19

Ejemplos de consultas

Escuela Consultas > Existentes

IES2000 F8 > Vista tab

Page 20: Sql basico

20

Vincular correspondencia

Exportar a Excel o AccessEn Word

Mostrar barra ‘Combinar Correspondencia’ Abrir origen de datos Insertar campos combinados

Page 21: Sql basico

21

Tablas Principales IES2000

ALUMNOSMATRICULNOTAS IMPARTEHORARIOSGRUPOSFALTASALPROFESORDOCENTESMATERIAS

Page 22: Sql basico

22

Tablas Principales ESCUELA

Alumnos / halumnosProfedg / hprofedgHistóricas comienzan por h Listas comienzan por l