Last active
November 6, 2018 14:42
-
-
Save tkovs/ba8f4539e21d2f83f53a107b165b2ec9 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
-- CRIA TABELAS | |
CREATE TABLE Curso | |
( | |
ID INT IDENTITY(1,1) PRIMARY KEY, | |
Nome VARCHAR(30), | |
DataCadastro DATETIME DEFAULT CURRENT_TIMESTAMP | |
); | |
CREATE TABLE CursoHistorico | |
( | |
ID INT IDENTITY(1,1) PRIMARY KEY, | |
CursoID INT, | |
Periodos INT, | |
DataCadastro DATETIME DEFAULT CURRENT_TIMESTAMP, | |
FOREIGN KEY (CursoID) REFERENCES Curso(ID) ON DELETE NO ACTION | |
); | |
CREATE TABLE Aluno | |
( | |
ID INT IDENTITY(1,1) PRIMARY KEY, | |
Nome VARCHAR(30), | |
CursoID INT, | |
FOREIGN KEY (CursoID) REFERENCES CursoHistorico(ID) ON DELETE NO ACTION | |
); | |
-- EXCLUE TABELAS | |
DROP TABLE Aluno; | |
DROP TABLE CursoHistorico; | |
DROP TABLE Curso; | |
-- CADASTRA | |
INSERT INTO | |
Curso (Nome) | |
VALUES | |
('Inglês'), | |
('Física'), | |
('Engenharia de Software'); | |
INSERT INTO | |
CursoHistorico (CursoID, Periodos) | |
VALUES | |
(1, 7), | |
(2, 8), | |
(3, 9); | |
INSERT INTO | |
Aluno (Nome, CursoID) | |
VALUES | |
('João', 1), | |
('Raimundo', 3); | |
INSERT INTO | |
CursoHistorico (CursoID, Periodos) | |
VALUES | |
(1, 8), | |
(3, 10); | |
INSERT INTO | |
Aluno (Nome, CursoID) | |
VALUES | |
('Aninha', 4), | |
('Marcus', 2), | |
('Antonio', 5); | |
-- CONSULTAS | |
-- Alunos e cursos | |
SELECT | |
A.Nome, C.Nome, CH.Periodos | |
FROM | |
Aluno A | |
INNER JOIN | |
CursoHistorico CH ON CH.ID = A.CursoID | |
INNER JOIN | |
Curso C ON C.ID = CH.CursoID; | |
SELECT | |
C.Nome, CH.Periodos, CH.DataCadastro AS 'DataAtualizacao' | |
FROM | |
Curso C | |
INNER JOIN | |
CursoHistorico CH ON CH.CursoID = C.ID | |
ORDER BY | |
C.ID; | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment