CREATE TABLE Autores (
AutorID INT AUTO_INCREMENT PRIMARY KEY,
Nome VARCHAR(100) NOT NULL
);
CREATE TABLE Livros (
LivroID INT AUTO_INCREMENT PRIMARY KEY,
Titulo VARCHAR(100) NOT NULL,
AutorID INT,
AnoPublicacao INT,
FOREIGN KEY (AutorID) REFERENCES Autores(AutorID)
);
CREATE TABLE Usuarios (
UsuarioID INT AUTO_INCREMENT PRIMARY KEY,
Nome VARCHAR(100) NOT NULL,
Email VARCHAR(100) UNIQUE NOT NULL
);
CREATE TABLE Emprestimos (
EmprestimoID INT AUTO_INCREMENT PRIMARY KEY,
UsuarioID INT,
LivroID INT,
DataEmprestimo DATE,
DataDevolucao DATE,
FOREIGN KEY (UsuarioID) REFERENCES Usuarios(UsuarioID),
FOREIGN KEY (LivroID) REFERENCES Livros(LivroID)
);
INSERT INTO Autores (Nome) VALUES
('Machado de Assis'),
('Clarice Lispector'),
('Jorge Amado');
INSERT INTO Livros (Titulo, AutorID, AnoPublicacao) VALUES
('Dom Casmurro', 1, 1899),
('Memórias Póstumas de Brás Cubas', 1, 1881),
('A Hora da Estrela', 2, 1977),
('Gabriela, Cravo e Canela', 3, 1958);
INSERT INTO Usuarios (NOME, Email) VALUES
('João Silva', 'joao.silva@example.com'),
('Maria Oliveira', 'maria.oliveira@example.com'),
('Pedro Souza', 'pedro.souza@example.com');
INSERT INTO Emprestimos (UsuarioID, LivroID, DataEmprestimo, DataDevolucao) VALUES
(1, 1, '2023-09-01', '2023-09-15'),
(2, 3, '2023-09-02', '2023-09-16'),
(3, 2, '2023-09-03', '2023-09-17'),
(1, 4, '2023-09-04', NULL); -- Empréstimo ainda não devolvido
-- SELECT Titulo AS Nome FROM Livros
-- UNION
-- SELECT Nome FROM Autores;
-- SELECT a.Nome FROM Autores a
-- JOIN Livros l ON a.AutorID = l.AutorID
-- JOIN Emprestimos e ON l.LivroID = e.LivroID
-- WHERE e.DataDevolucao IS NULL
-- INTERSECT
-- SELECT Nome FROM Autores; -- Para garantir que sejam autores
-- SELECT Titulo FROM Livros
-- WHERE LivroID NOT IN (SELECT DISTINCT LivroID FROM Emprestimos);
-- SELECT u.Nome AS Usuario, l.Titulo AS Livro
-- FROM Usuarios u, Livros l;
-- SELECT u.Nome AS Usuario, l.Titulo AS Livro
-- FROM Usuarios u, Livros l;
SELECT u.Nome FROM Usuarios u
LEFT JOIN Emprestimos e ON u.UsuarioID = e.UsuarioID
WHERE e.EmprestimoID IS NULL;
To embed this project on your website, copy the following code and paste it into your website's HTML: