Professional Documents
Culture Documents
La clusula CONSTRAINT
Es una palabra clave opcional que indica el principio de una definicin de una restriccin
PRIMARY KEY, NOT NULL, UNIQUE, FOREING KEY O CHECK.
Se utiliza en las instrucciones ALTER TABLE y CREATE TABLE para crear o eliminar ndices.
La clusula CONSTRAINT debe aparecer inmediatamente despus del campo indexado.
Para las consultas de referencia cruzada se utiliza el CROSS JOIN
Ejemplo:
SELECT CODIGO,DESCRIPCION
FROM CURSO
CROSS JOIN HISTORIAL
Mostrar el nombre, apellido y cdula de todas las personas que estn actualmente inscritos en
algn curso
SELECT NOMBRE, APELLIDO,PERSONA.CEDULA
FROM PERSONA
JOIN HISTORIAL
ON PERSONA.CEDULA = HISTORIAL.CEDULA
El INNER JOIN funciona de la misma manera que el JOIN as que si lo utilizamos el resultado
debera ser el mismo.
Ejemplo:
SELECT NOMBRE,APELLIDO, A.CEDULA
FROM PERSONA A
INNER JOIN HISTORIAL B
ON A.CEDULA = B.CEDULA
GROUP BY A.CEDULA,NOMBRE,APELLIDO
Muestra los datos de la tabla Historial, coincidan o no con la tabla Persona.
FULL OUTER JOIN O FULL JOIN: Combinacin externa completa, incluye todas las filas de
ambas tablas, con independencia de que la otra tabla tenga o no un valor coincidente.
Ejemplo 1:
SELECT A.CEDULA,A.NOMBRE, A.APELLIDO FROM PERSONA A
FULL JOIN HISTORIAL B
ON A.CEDULA = B.CEDULA
GROUP BY A.CEDULA,A.NOMBRE, A.APELLIDO
Ejemplo 2:
Devuelve las personas que tienen cursos matriculados
SELECT B.CEDULA,A.NOMBRE, A.APELLIDO FROM HISTORIAL B
FULL JOIN PERSONA A
ON B.CEDULA = A.CEDULA
WHERE B.CEDULA IS NOT NULL
GROUP BY B.CEDULA,A.NOMBRE, A.APELLIDO
Mostrar las personas que tienen cursos matriculados
SELECT B.CEDULA,A.NOMBRE, A.APELLIDO
FROM HISTORIAL B
LEFT JOIN PERSONA A
ON B.CEDULA = A.CEDULA
WHERE B.CEDULA IS NOT NULL
GROUP BY B.CEDULA,A.NOMBRE, A.APELLIDO