CREATE TABLE Autores (
AutorID INT AUTO_INCREMENT PRIMARY KEY,
Nome VARCHAR(100),
Email VARCHAR(100),
InstituicaoID INT,
FOREIGN KEY (InstituicaoID) REFERENCES Instituicoes(InstituicaoID)
);
CREATE TABLE Revistas (
RevistaID INT AUTO_INCREMENT PRIMARY KEY,
Nome VARCHAR(100),
ISSN VARCHAR(20)
);
CREATE TABLE Artigos (
ArtigoID INT AUTO_INCREMENT PRIMARY KEY,
Titulo VARCHAR(255),
Resumo TEXT,
PalavrasChave VARCHAR(255),
RevistaID INT,
FOREIGN KEY (RevistaID) REFERENCES Revistas(RevistaID)
);
CREATE TABLE Instituicoes (
InstituicaoID INT AUTO_INCREMENT PRIMARY KEY,
Nome VARCHAR(100),
Cidade VARCHAR(100),
Pais VARCHAR(100)
);
CREATE TABLE Autor_Artigo (
AutorID INT,
ArtigoID INT,
PRIMARY KEY (AutorID, ArtigoID),
FOREIGN KEY (AutorID) REFERENCES Autores(AutorID),
FOREIGN KEY (ArtigoID) REFERENCES Artigos(ArtigoID)
);
Com relação ao código SQL acima, no SGBD MySQL, julgue os itens de 96 a 100.
Para mostrar todos os artigos publicados na revista RECEN, juntamente com seus autores, pode-se utilizar o comando seguir.
SELECT Artigos.Titulo AS TituloArtigo, Autores.Nome AS NomeAutor
FROM Artigos
INNER JOIN Autores ON Autor_Artigo.AutorID = Autores.AutorID
WHERE Artigos.RevistaID = (SELECT RevistaID FROM Revistas WHERE Nome = ‘NomeDaRevista‘);