Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CREATE DATABASE db_lista;
- USE db_lista;
- -- QUESTOÕES 1 a 3 --
- CREATE TABLE tb_empregado(
- idt_empregado INT PRIMARY KEY AUTO_INCREMENT,
- nme_empregado VARCHAR(50) NOT NULL,
- end_empregado VARCHAR(100) NOT NULL,
- tel_empregado VARCHAR(20) NOT NULL,
- dta_nascimento_empregado DATE NOT NULL,
- eml_empregado VARCHAR(50) NOT NULL,
- vlr_salario_empregado DECIMAL(8,2) NOT NULL,
- qtd_dependente INT NOT NULL
- );
- CREATE TABLE tb_dependente(
- idt_dependente INT PRIMARY KEY AUTO_INCREMENT,
- cod_empregado INT NOT NULL,
- nme_dependente VARCHAR(50) NOT NULL,
- dta_nascimento_dependente DATE NOT NULL,
- eml_dependente VARCHAR(50),
- tel_dependente VARCHAR(20),
- CONSTRAINT fk_d_empregado FOREIGN KEY (cod_empregado) REFERENCES tb_empregado(idt_empregado)
- );
- INSERT INTO tb_empregado VALUES (1, 'Maria Naves Santos', 'SQS 304 BL E APT 203', '(61)981234356', '1987-12-12', 'maria_naves87@gmail.com', '8000.00', 2),
- (2, 'Mauro Almeida Borges', 'SQSW 301 BL A APT 106', '(61)983214576', '1983-03-21', 'mauro_borges83@gmail.com', '6500.00', 1),
- (3, 'José Costa Neto', 'SQN 107 BL B APT 602' , '(61)986742359', '1979-09-30', 'jose_neto79@gmail.com', '4900.00', 1),
- (4, 'Bianca Redes', 'SQS 103 BL C APT 405', '(61)994532675', '1988-5-26', 'bianca_redes88@gmail.com', '5250.00', 1),
- (5, 'Nilton Valério Fonseca', 'Shis Qi 13, entrada conj. 8/9, Bloco D APT 103', '(61)983425167', '1990-01-01', 'nilton_fonseca90@gmail.com', '3990.00', 1),
- (6, 'Alanderson Júnior', 'SQN 204 BLC E APT 202', '(61)983475692', '1971-10-07', 'alan_junior71@gmail.com', '3500.00', 1),
- (7, 'Sandro Moura', 'SQS 311 BL F APT 502', '(61)987456312', '1985-02-13', 'sandro_nalbert85@gmail.com', '11000.00', 2),
- (8, 'Fausto Cardoso', 'SHCGN 706 Norte, Conjunto A, Bloco B, APT 202', '(61)945236712', '1982-06-23', 'fausto_carodoso82@gmail.com', '5100.00', 1),
- (9, 'Victor Monteiro', 'SQN 310 BL I APT 101', '(61)994821463', '1974-07-29', 'victor_monteiro74@gmail.com', '4300.00', 1),
- (10, 'Souza Mendes', 'SQSW 303 BL F APT 402', '(61)945218329', '1982-06-23', 'souza_mendes82@gmail.com', '13000.00', 2)
- ;
- SELECT * FROM tb_empregado;
- INSERT INTO tb_dependente VALUES (1, 1, 'Nathan Naves', '1999-05-27', 'nathan_naves99@gmail.com', '(61)985326173'),
- (2, 2, 'Patricia Borges', '1986-06-17', 'patricia_borges86@gmail.com', '(61)998542346'),
- (3, 3, 'Henrique Costa Neto', '2000-04-10', 'henrique_costa00@gmail.com', '(61)98853472'),
- (4, 4, 'Murilo Redes', '1983-8-16', 'murilo_redes83@gmail.com', '(61)998317263'),
- (5, 5, 'Alice Fonseca', '2012-03-26', '',''),
- (6, 6, 'Alanderson Neto', '1998-03-21', 'alan_neto97@gmail.com', '(61)983673856'),
- (7, 7, 'Isabela Moura', '1989-07-19', 'isabela_moura89@gmail.com', '(61)988394456'),
- (8, 8, 'Natalia Cardoso', '1989-10-14', 'natalia_cardoso89@gmail.com', '(61)973342561'),
- (9, 9, 'Manuela Monteiro', '1991-05-26', 'manuela_monteiro91@gmail.com', '(61)988834526'),
- (10, 10, 'Julia Mendes', '1990-09-13', 'julia_mendes@gmail.com', '(61)983247721'),
- (11, 1, 'Laura Naves', '2005-11-17', 'laurinha05@gmail.com','(61)987341151'),
- (12, 7, 'Heitor Moura', '2015-01-12', '', ''),
- (13, 10, 'Sofia Mendes', '2013-07-25', '', '');
- SELECT * FROM tb_dependente;
- SELECT nme_empregado, dta_nascimento_empregado, qtd_dependente, group_concat(' ', nme_dependente, ' (', dta_nascimento_dependente, ')') AS 'dependentes' FROM tb_empregado JOIN tb_dependente ON idt_empregado= cod_empregado GROUP BY qtd_dependente DESC, idt_empregado;
- SELECT nme_empregado, group_concat(nme_dependente) as dependentes, end_empregado FROM tb_empregado JOIN tb_dependente ON idt_empregado = cod_empregado GROUP BY idt_empregado;
- SELECT nme_empregado, group_concat(nme_dependente, ' (R$:', vlr_salario_empregado * 0.05, ')') AS 'valor para dependente' FROM tb_empregado JOIN tb_dependente ON idt_empregado = cod_empregado GROUP BY idt_empregado;
- -- QUESTÕES 4 a 7 --
- CREATE TABLE tb_produto(
- idt_produto INT PRIMARY KEY AUTO_INCREMENT,
- nme_produto VARCHAR(50) NOT NULL,
- vlr_produto DECIMAL(8,2) NOT NULL,
- qtd_produto INT
- );
- CREATE TABLE tb_cliente(
- idt_cliente INT PRIMARY KEY AUTO_INCREMENT,
- nme_cliente VARCHAR(50) NOT NULL,
- cpf_cliente CHAR(14) NOT NULL,
- end_cliente TEXT NOT NULL,
- tel_cliente VARCHAR(20) NOT NULL
- );
- CREATE TABLE ta_item(
- idt_item INT PRIMARY KEY AUTO_INCREMENT,
- qtd_item INT NOT NULL,
- pct_desconto_item INT,
- cod_cliente INT NOT NULL,
- cod_produto INT NOT NULL,
- dti_compra_item DATETIME NOT NULL,
- CONSTRAINT fk_i_produto FOREIGN KEY (cod_produto) REFERENCES tb_produto(idt_produto),
- CONSTRAINT fk_i_cliente FOREIGN KEY (cod_cliente) REFERENCES tb_cliente(idt_cliente)
- );
- INSERT INTO tb_produto VALUES (1, 'Monitor', 500.00, 5), (2, 'Mouse', 150.00, 5), (3, 'Teclado', 230.00, 5),
- (4, 'Headphone', 200.00, 5), (5, 'Caixa de som', 100.00, 5), (6, 'Computador', 1500.00, 5), (7, 'Notebook', 2000.00, 5);
- SELECT * FROM tb_produto;
- INSERT INTO tb_cliente VALUES (1, 'José Almeida', '030.413.025-54', 'SQSW 301 BL A APT 502', '(61)983429876'),
- (2, 'Victor Monteiro', '394.563.567-27','SQN 309 BL E APT 401', '(61)997781463'),
- (3, 'Raissa Matos', '746.837.273-93', 'Shis Qi 13, entrada conj. 8/9, Bloco D APT 303', '(61)984687342'),
- (4, 'Laura Gonçalves', '134.756.203-82', 'SQN 205 BLC C APT 302', '(61)983475692'),
- (5, 'Mauro Teles', '653.156.129-13', 'SHCGN 706 Norte, Conjunto A, Bloco B, APT 202', '(61)983573184'),
- (6, 'Paulo Fontes', '423.745.831-72', 'SQN 504 BLC G APT 302', '(61)983985692'),
- (7, 'Guilherme ALves', '510.123.717-03', 'SQN 105 BL A APT 402' , '(61)981564359'),
- (8, 'Thiago Borges', '913.814.745-15', 'SQSW 304 BL B APT 406', '(61)984761374');
- SELECT * FROM tb_cliente;
- -- Nova compra --
- INSERT INTO ta_item VALUES (1, 2, 5, 1, 2, str_to_date('03/04/17 20:07:30' , '%m/%d/%y %H:%i:%s'));
- SELECT nme_cliente, idt_item AS 'número da compra', qtd_item, nme_produto, group_concat('R$:', qtd_item * vlr_produto) AS 'preço total', group_concat(pct_desconto_item, '%') AS 'desconto', group_concat('R$:', qtd_item * vlr_produto - ((pct_desconto_item/100) * (qtd_item * vlr_produto))) AS 'valor a ser pago' FROM tb_produto JOIN tb_cliente JOIN ta_item ON cod_produto = idt_produto AND cod_cliente = idt_cliente WHERE idt_item = 1;
- UPDATE tb_produto SET qtd_produto = (qtd_produto - 2) WHERE idt_produto = 2;
- SELECT * FROM tb_produto;
- -- Alterando quantidade de itens --
- UPDATE ta_item SET qtd_item = (qtd_item + 3), dti_compra_item = str_to_date('03/04/17 20:09:25' , '%m/%d/%y %H:%i:%s') WHERE idt_item = 1;
- SELECT nme_cliente, idt_item AS 'número da compra', qtd_item, nme_produto, group_concat('R$:', qtd_item * vlr_produto) AS 'preço total', group_concat(pct_desconto_item, '%') AS 'desconto', group_concat('R$:', qtd_item * vlr_produto - ((pct_desconto_item/100) * (qtd_item * vlr_produto))) AS 'valor a ser pago' FROM tb_produto JOIN tb_cliente JOIN ta_item ON cod_produto = idt_produto AND cod_cliente = idt_cliente WHERE idt_item = 1;
- UPDATE tb_produto SET qtd_produto = (qtd_produto - 3) WHERE idt_produto = 2;
- SELECT * FROM tb_produto;
- -- Cancelando a compra --
- UPDATE ta_item SET qtd_item = 0 WHERE idt_item = 1;
- SELECT nme_cliente, idt_item AS 'número da compra', qtd_item, nme_produto, group_concat('R$:', qtd_item * vlr_produto) AS 'preço total', group_concat(pct_desconto_item, '%') AS 'desconto', group_concat('R$:', qtd_item * vlr_produto - ((pct_desconto_item/100) * (qtd_item * vlr_produto))) AS 'valor a ser pago' FROM tb_produto JOIN tb_cliente JOIN ta_item ON cod_produto = idt_produto AND cod_cliente = idt_cliente WHERE idt_item = 1;
- UPDATE tb_produto SET qtd_produto = (qtd_produto + 5) WHERE idt_produto = 2;
- SELECT * FROM tb_produto;
- -- Selects --
- -- QUESTÕES DE 8 a 10 --
- CREATE TABLE tb_time(
- idt_time INT PRIMARY KEY AUTO_INCREMENT,
- nme_time VARCHAR(50) NOT NULL,
- dta_fundacao_time DATE NOT NULL
- );
- CREATE TABLE td_posicao(
- idt_posicao INT PRIMARY KEY AUTO_INCREMENT,
- nme_posicao VARCHAR(50) NOT NULL
- );
- CREATE TABLE td_tipo_ocorrencia(
- idt_tipo_ocorrencia INT PRIMARY KEY AUTO_INCREMENT,
- nme_tipo_ocorrencia VARCHAR(50) NOT NULL
- );
- CREATE TABLE tb_estadio(
- idt_estadio INT PRIMARY KEY AUTO_INCREMENT,
- nme_estadio VARCHAR(50) NOT NULL
- );
- CREATE TABLE tb_jogador(
- idt_jogador INT PRIMARY KEY AUTO_INCREMENT,
- nme_jogador VARCHAR(50) NOT NULL,
- dta_nascimento_jogador DATE NOT NULL,
- cod_posicao INT NOT NULL,
- CONSTRAINT fk_jgd_posicao FOREIGN KEY (cod_posicao) REFERENCES td_posicao(idt_posicao)
- );
- CREATE TABLE tb_contrato(
- idt_contrato INT PRIMARY KEY AUTO_INCREMENT,
- dta_ini_contrato DATE NOT NULL,
- dta_fim_contato DATE NOT NULL,
- cod_time INT NOT NULL,
- cod_jogador INT NOT NULL,
- CONSTRAINT fk_c_time FOREIGN KEY (cod_time) REFERENCES tb_time(idt_time),
- CONSTRAINT fk_c_jogador FOREIGN KEY (cod_jogador) REFERENCES tb_jogador(idt_jogador)
- );
- CREATE TABLE tb_jogo(
- idt_jogo INT PRIMARY KEY AUTO_INCREMENT,
- dti_jogo DATETIME NOT NULL,
- cod_estadio INT NOT NULL,
- cod_time_mandante INT NOT NULL,
- cod_time_visitante INT NOT NULL,
- CONSTRAINT fk_j_estadio FOREIGN KEY (cod_estadio) REFERENCES tb_estadio(idt_estadio),
- CONSTRAINT fk_j_time_mandante FOREIGN KEY (cod_time_mandante) REFERENCES tb_time(idt_time),
- CONSTRAINT fk_j_time_visitante FOREIGN KEY (cod_time_visitante) REFERENCES tb_time(idt_time)
- );
- CREATE TABLE ta_ocorrencia(
- idt_ocorrencia INT PRIMARY KEY AUTO_INCREMENT,
- min_ocorrrencia INT NOT NULL,
- cod_tipo_ocorrencia INT NOT NULL,
- cod_jogador INT NOT NULL,
- cod_jogo INT NOT NULL,
- CONSTRAINT fk_o_tipo_ocorrencia FOREIGN KEY (cod_tipo_ocorrencia) REFERENCES td_tipo_ocorrencia(idt_tipo_ocorrencia),
- CONSTRAINT fk_o_jogador FOREIGN KEY (cod_jogador) REFERENCES tb_jogador(idt_jogador),
- CONSTRAINT fk_o_jogo FOREIGN KEY (cod_jogo) REFERENCES tb_jogo(idt_jogo)
- );
- INSERT INTO tb_time VALUES (1, 'Atlético Mineiro', '1908-03-25'), (2, 'Vasco', '1898-08-21'), (3, 'Grêmio', '1903-09-15'), (4, 'São Paulo', '1930-01-25'), (5, 'Chapecoense', '1973-05-10'), (6, 'Internacional', '1909-04-04'), (7, 'América-MG', '1912-04-30'), (8, 'Fluminense', '1902-07-21');
- SELECT * FROM tb_time;
- INSERT INTO td_posicao VALUES (1, 'Goleiro'), (2, 'Zagueiro'), (3, 'Lateral'), (4, 'Meio-campo'), (5, 'Atacante');
- SELECT * FROM td_posicao;
- INSERT INTO td_tipo_ocorrencia VALUES (1, 'Cartão Amarelo'), (2, 'Cartão Vermelho'), (3, 'Gol'), (4, 'Assistência');
- SELECT * FROM td_posicao;
- INSERT INTO tb_estadio VALUES (1, 'Independência'), (2, 'São Januário'), (3, 'Arena do Grêmio'), (4, 'Morumbi'), (5, 'Arena Condá'), (6, 'Beira-rio'), (7, 'Maracanã');
- SELECT * FROM tb_estadio;
- INSERT INTO tb_jogador VALUES (1, 'Victor', '1983-01-21', 1), (2, 'Leonardo Silva', '1979-06-22', 2), (3, 'Gabriel', '1995-03-14', 2), (4, 'Marcos Rocha', '1988-12-11', 3),
- (5, 'Fábio Santos', '1985-09-16', 3), (6, 'Rafael Carioca', '1989-06-18', 4),
- (7, 'Elias', '1985-05-16', 4), (8, 'Robinho', '1984-01-25', 5), (9, 'Otero', '1992-11-09', 5), (10, 'Fred', '1983-10-03', 5), (11, 'Danilo', '1991-08-17', 4),
- (12, 'Martin Silva'), (13, 'Gilberto'), (14, 'Rafael Marques'), (15, 'Rodrigo'), (16, 'Henrique'), (17, 'Jean'), (18, 'Douglas Luiz' ), (19, 'Nenê'), (20, 'Escudero'), (21, 'Kelvin'), (22, 'Thalles'),
- (23, 'Marcelo Grohe'), (24, 'Léo Moura'), (25, 'Rafael Thyere'), (26, 'Kannemann'), (27, 'Marcelo Oliveira'), (28, 'Jailson'), (29, 'Michel'), (30, 'Ramiro'), (31, 'Bolaños'), (32, 'Pedro Rocha'), (33, 'Luan'),
- (34, 'Denis'), (35, 'Bruno'),(36, 'Breno'), (37, 'Rodrigo Caio'), (38, 'Júnior Tavares'), (39, 'Thiago Mendes'), (40, 'João Schimidt'), (41, 'Cícero'), (42, 'Cueva'), (43, 'Luiz Araújo'), (44, 'Lucas Pratto'),
- (45, 'Danilo'), (46, 'Caramelo'), (47, 'Neto'), (48, 'Thiego'), (49, 'Dener Assunção'), (50, 'Josimar'), (51, 'Gil'), (52, 'Cleber Santana'), (53, 'Tiaguinho'), (54, 'Kempes'), (55, 'Ananias'),
- (56, 'Danilo Fernandes'), (57, 'Alemão'), (58, 'Léo Ortiz'), (59, 'Paulão'), (60, 'Iago'), (61, 'Anselmo'), (62, 'Valdívia'), (63, 'D`Alessandro'), (64, 'Uendel'), (65, 'Nico López'), (66, 'Brenner'),
- (67, 'João Ricardo'), (68, 'Auro'), (69, 'Rafael Lima'), (70, 'Messias'), (71, 'Pará'), (72, 'Pará'), (73, 'Ernandes'), (74, 'Juninho'), (75, 'Gérson Magrão'), (76, 'Renan Oliveira'), (77, 'Gustavo Blanco'),
- (78, 'Júlio César'), (79, 'Lucas'), (80, 'Renato Chaves'), (81, 'Henrique'), (82, 'Léo'), (83, 'Orejuela'), (84, 'Douglas'), (85, 'Sornoza'), (86, 'Richarlison'), (87, 'Henrique Dourado'), (88, 'Wellington Silva');
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement