banco de dados de uma biblioteca
banco de dados de uma biblioteca
CREATE TABLE livros (
id INTEGER PRIMARY KEY,
titulo TEXT,
autor TEXT,
genero TEXT,
numero_exemplares TEXT
);
CREATE TABLE clientes (
id INTEGER PRIMARY KEY,
nome TEXT,
CPF TEXT,
endereco TEXT,
email TEXT,
telefone TEXT
);
CREATE TABLE funcionarios (
id INTEGER PRIMARY KEY,
nome TEXT,
email TEXT,
CPF TEXT,
telefone TEXT
);
CREATE TABLE emprestimos (
id INTEGER PRIMARY KEY,
clientes_id INTEGER,
livros_id INTEGER,
data_emprestimo TEXT,
data_devolucao TEXT
);
##clientes
INSERT INTO clientes VALUES (1,"jp","000000000-12","rua cabaral junior, 1342", "[email protected]", "86998534511");
INSERT INTO clientes VALUES (2,"bin laden","000000000-13","rua cabaral junior, 1243", "[email protected]", "86998534511");
##livros
INSERT INTO livros VALUES (1, "almanaque do aviao", "desconhecido", "drama", "001");
##funcionarios
INSERT INTO funcionarios VALUES (1, "francid", "[email protected]", "000000000-14", "86998534510");
##emprestimos
INSERT INTO emprestimos VALUES (1,2,1,"09/08/2001","14/10/2001");
##selecionar informações
SELECT * FROM clientes;
SELECT * FROM livros;
SELECT * FROM funcionarios;
SELECT clientes.nome,emprestimos.data_devolucao, emprestimos.data_emprestimo,
livros.titulo
FROM emprestimos LEFT JOIN clientes ON emprestimos.clientes_id = clientes.id
LEFT JOIN livros ON emprestimos.livros_id = livros.id;
##left join -> é como se você estivesse pegando todos os carrinhos da caixa "emprestimos"
e espalhando-os em uma mesa. Em seguida, você olha para cada carrinho e verifica
se ele tem um boneco correspondente na caixa "clientes". Se tiver, você coloca o carrinho
e o boneco juntos em um lugar. Se não tiver um boneco para um carrinho,
você ainda deixa o carrinho na mesa, sozinho.
Então, o LEFT JOIN garante que todos os carrinhos da caixa "emprestimos" estejam presentes
na mesa, mesmo que alguns deles não tenham um boneco correspondente da caixa "clientes".
##seleciona_tabelas_e_colunas_(table.column)
##seleciona_os_dados_da_tabela_(emprestimos)_e_junta_outra
##table(clientes)_com_emprestimos_e_as_column_etc.