Sei sulla pagina 1di 4

RUTA SQL

Introducción al SQL
Una consulta SQL está compuesta por una instrucción SQL que define esa consulta. Se trata de un comando que puede ocupar cuantas
líneas de texto se desee, terminado en punto y coma (;). SQL es un lenguaje sencillo e intuitivo: las consultas se asemejan al lenguaje
natural.
Existen algunas palabras reservadas, como en cualquier lenguaje: SELECT, INSERT, DELETE, UPDATE, WHERE, ORDER, BY, etc.

Consultas de selección simple


La consulta más simple posible consiste en la selección de campos y registros de una tabla. Se identifican los campos que nos interesan y
una condición que deben cumplir los registros seleccionados. El resultado es una tabla que es un subconjunto de la original.
El formato genérico de este tipo de consultas es:

SELECT <lista de campos> FROM <tabla> WHERE <condición>;

Esta instrucción recupera ciertos campos de los registros de una tabla que verifican una condición. La cláusula WHERE es opcional. Si se
omite, se seleccionan todos los registros (se supone que la condición es siempre verdadera).

SELECT <lista de campos> FROM <tabla>;

Si nos interesan todos los campos podemos utilizar el símbolo * para identificar a la lista completa:

SELECT * FROM <tabla> WHERE <condición>;

Si no, podemos especificar varios campos identificándolos por sus nombres y separándolos por comas (,).

SELECT campo1, campo2, ..., campoN FROM <tabla> WHERE <condición>;

Claúsulas

Trabajaremos con el siguiente modelo

EJEMPLO

SELECT
Se utiliza para seleccionar los campos que se quiere mostrar

Forma General

SELECT NOMBRE_TABLA.ATRIBUTO1, NOMBRE_TABLA.ATRIBUTO2.. NOMBRE_TABLA.ATRIBUTO N

Mostrar los datos de la tabla A1

SELECT A1.cod_a1, A1.nom_A1, A1.prom_a1

FROM (DE)

FROM TABLA1,TABLA2, TABLA N

WHERE(DONDE)

WHERE CONEXIÓN AND FILTRO

La conexión va siempre y cuando la consulta incluya más de una tabla .La conexión se realiza
desde una tabla a otra a través de las llaves primaria hacia la foránea o viceversa

Ejemplo

Si se va a conectar la tabla B1 con C1


Primero identifiquemos cuál es la llave común. En este caso sería cod_b1. Es primaria en la
Tabla B1 y foránea en la tabla C1 entonces para conectar las dos tablas la instrucción sería
la siguiente

WHERE B1.cod_b1=C1.cod_b1

Si se quiere conectar ahora B1 con A1XB1 entonces agrego la clausula AND

WHERE B1.cod_b1=C1.cod_b1 AND B1.cod_b1=A1XB1.cod_b1

Y si se quiere conectar A1XB1 CON A1 entonces

WHERE B1.cod_b1=C1.cod_b1 AND B1.cod_b1=A1XB1.cod_b1 AND A1XB1.cod_A1=A1.cod_a1


Y quedaron conectadas las tablas

FILTRO

Es el parámetro con el que se compara para extraer registros. Por ejemplo buscar los
registros que cumplan con el cod_a1=010 en la tabla A1

Entonces el parámetro o condición sería cod_a1=010


Las consultas completas serían

Entonces la consulta completa:

1)Mostrar los nombres de A1 que cumplan con el codigo 010


SELECT A1.nom_a1 from A1 where A1.cod_a1=010

En esta ocasión se utilizó where por que tiene el filtro =010


Si enunciara que hay que mostrar todos los datos de A1. No llevaría where porque no tiene
filtro

2)Mostrar los nombres de A1 que están relacionados con el nom_b1=”CAMILA”


Solución

Que hay que mostrar? Los nombres de A1 SELECT A1.nom_a1


Cuáles tablas participan en la consulta
FROM A1,A1XB1,B1
A1,A1xB1,B1

Lleva where? Lleva filtros?


Si lleva where porque hay varias tablas incluidas en las consultas y hay que conectarlas y
hay un filtro nom_bl=”CAMILA”

WHERE A1.cod_a1=A1XB1.cod_a1 and A1XB1.cod_b1=B1.cod_b1 AND B1.nom_bl=”CAMILA”

Entonces la consulta quedaría


SELECT A1.nom_a1
FROM A1,A1XB1,B1
WHERE A1.cod_a1=A1XB1.cod_a1 and A1XB1.cod_b1=B1.cod_b1 AND B1.nom_bl=”CAMILA”

Ejercicio 2 Analizar
Supongamos la tabla de Alumnos

Campo Descripción
NIF NIF
Nombre Nombre completo
Apellid Primer apellido
o1
Apellid Segundo apellido
o2
Edad Edad
Parcial Nota obtenida en el primer
1 parcial
Parcial Nota obtenida en el segundo
2 parcial
Práctic Nota obtenida en las prácticas
as
Podemos definir las siguientes consultas de ejemplo:
Consulta SQL
SELECT *
Seleccionar los alumnos mayores
FROM Alumnos
de 25 años.
WHERE Edad>=25;
Seleccionar los apellidos y SELECT Apellido1, Apellido2, Nombre
nombre de los que han aprobado FROM Alumnos
los dos parciales. WHERE (Parcial1>=5) AND (Parcial2>=5);
Generar un listado con los SELECT Nombre, Apellido1, Apellido2, Parcial1,
nombres y apellidos de los Parcial2, Prácticas
alumnos y sus notas. FROM Alumnos;
Ejercicio para Analizar

1. MOSTRAR ARTICULOS SUMINISTRADOS POR GENIUS

SELECT ARTICULO.nom_articulo FROM ARTICULO,ARTICULOXPROV,PROVEEDOR WHEREPROVEEDOR.cod_prov=A


RTICULOXPROV.cod_prov AND ARTICULOXPROV.cod_articulo=ARTICULO.cod_articulo and
PROVEEDOR.nom_prov="GENIUS"

2.MOSTRAR ARTICULOS QUE HA PEDIDO EL CLIENTE 88194567 SUMINISTRADOS POR MARKVISION

SELECT ARTICULO.nom_articulo

FROM ARTICULO,ARTICULOXPROV,PROVEEDOR,CLIENTE,PEDIDO

WHERECLIENTE.cod_cli=PEDIDO.cod_cli and PEDIDO.cod_articulo=ARTICULO.cod_articulo and


ARTICULO.cod_articulo=ARTICULOXPROV.cod_articulo and
ARTICULOXPROV.cod_prov=PROVEEDOR.cod_prov and PROVEEDOR.nom_prov="MARKVISION" and
CLIENTE.cod_cli=88194567

Desarrollen las siguientes

3. ARTICULOS PEDIDOS POR LUZ BOTELLO

4. PROVEEDORES QUE SUMINISTRAN LOS ARTICULOS LLEVADOS POR CARLOS CONTRERAS

Entregue en grupo de dos personas en una hoja las consultas anteriores 3 y 4 y las siguientes:

1.MOSTRAR LAS FACTURAS DEL CLIENTE 110

2.ARTICULOS QUE HA COMPRADO PEPITO PEREZ Y EN QUE FACTURA Y EN QUE FECHA

3.NOMBRE DEL FABRICANTE DE LOS ARTICULOS QUE PIDIO FULANITO EL 10 DE ENERO DE 2007
4. CUÁL ES EL CODIGO DEL JEFE DEL VENDEDOR QUE EXPIDIÓ LA FACTURA 1020

Potrebbero piacerti anche