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', '1983-03-25', 1), (13, 'Gilberto', '1993-03-07', 3), (14, 'Rafael Marques', '1983-09-21', 2), (15, 'Rodrigo', '1980-08-27', 2), (16, 'Henrique', '1994-04-25', 3),
- (17, 'Jean', '1994-09-26', 4), (18, 'Douglas Luiz', '1998-05-09', 4), (19, 'Nenê', '1981-07-19', 4), (20, 'Escudero', '1987-04-20', 4), (21, 'Kelvin', '1993-06-01', 5), (22, 'Thalles', '1995-05-18', 5),
- (23, 'Marcelo Grohe', '1987-01-13', 1), (24, 'Léo Moura', '1978-10-23', 3), (25, 'Rafael Thyere', '1993-05-17', 2), (26, 'Kannemann', '1991-03-14', 2), (27, 'Marcelo Oliveira', '1987-03-29', 3),
- (28, 'Jailson', '1995-09-07', 4), (29, 'Michel', '1990-03-22', 4), (30, 'Ramiro', '1993-05-22', 4), (31, 'Bolaños', '1990-06-01', 5), (32, 'Pedro Rocha', '1994-10-01', 5), (33, 'Luan', '1993-03-27', 5),
- (34, 'Denis', '1987-04-14', 1), (35, 'Bruno', '1985-08-30', 3),(36, 'Breno', '1989-10-13', 2), (37, 'Rodrigo Caio', '1993-08-17', 2), (38, 'Júnior Tavares', '1996-08-07', 3), (39, 'Thiago Mendes', '1992-03-15', 4),
- (40, 'João Schimidt', '1993-05-19', 4), (41, 'Cícero', '1984-08-26', 4), (42, 'Cueva', '1991-11-23', 4), (43, 'Luiz Araújo', '1996-06-02', 5), (44, 'Lucas Pratto', '1988-06-04', 5),
- (45, 'Danilo', '1985-07-31', 1), (46, 'Caramelo', '1994-08-30', 3), (47, 'Neto', '1985-08-16', 2), (48, 'Thiego', '1986-07-22', 2), (49, 'Dener Assunção', '1991-06-28', 3), (50, 'Josimar', '1986-08-18', 4),
- (51, 'Gil', '1987-09-03', 4), (52, 'Cleber Santana', '1981-06-27', 4), (53, 'Tiaguinho', '1994-06-04', 5), (54, 'Kempes', '1982-08-03', 5), (55, 'Ananias', '1989-01-20', 5),
- (56, 'Danilo Fernandes', '1988-04-03', 1), (57, 'Alemão', '1990-05-20', 3), (58, 'Léo Ortiz', '1996-01-03', 2), (59, 'Paulão', '1986-02-25', 2), (60, 'Iago', '1997-03-23', 3), (61, 'Anselmo', '1989-02-20', 4),
- (62, 'Valdívia', '1994-10-04', 5), (63, 'D`Alessandro', '1981-04-15', 4), (64, 'Uendel', '1988-08-10', 4), (65, 'Nico López', '1993-10-01', 5), (66, 'Brenner', '1994-03-01', 5),
- (67, 'João Ricardo', '1988-09-06',1), (68, 'Auro', '1996-01-23', 3), (69, 'Rafael Lima', '1986-03-08', 2), (70, 'Messias', '1994-11-03', 2), (71, 'Pará', '1995-08-23', 3), (72, 'Marion', '1991-09-07', 5),
- (73, 'Ernandes', '1987-11-11', 4), (74, 'Juninho', '1987-10-23', 4), (75, 'Gérson Magrão', '1985-06-13', 4), (76, 'Renan Oliveira', '1989-12-29', 4), (77, 'Gustavo Blanco', '1994-10-03', 4),
- (78, 'Júlio César', '1986-09-02', 1), (79, 'Lucas', '1988-03-26', 3), (80, 'Renato Chaves', '1990-05-04', 2), (81, 'Henrique', '1986-10-14', 2), (82, 'Léo', '1996-03-06', 3), (83, 'Orejuela', '1993-02-14', 4),
- (84, 'Douglas', '1997-01-13', 4), (85, 'Sornoza', '1994-01-28', 4), (86, 'Richarlison', '1997-05-10', 5), (87, 'Henrique Dourado', '1989-09-15', 5), (88, 'Wellington Silva', '1993-01-06', 5);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement