Questions with JOIN [solved]

Asked

Viewed 20 times

1

inserir a descrição da imagem aqui

CREATE TABLE CIDADE(
    ID_CIDADE INT NOT NULL,
    NOME VARCHAR(50),
    CONSTRAINT PK_FORNECEDOR PRIMARY KEY (ID_CIDADE)
);

CREATE TABLE FORNECEDOR(
    CNPJ CHAR(14) NOT NULL,
    RAZÃO_SOCIAL VARCHAR(40),
    ENDEREÇO VARCHAR(50),
    ID_CIDADE INT,
    CONSTRAINT PK_FORNECEDOR PRIMARY KEY(CNPJ), CONSTRAINT FK_FORNECEDOR_CIDADE FOREIGN KEY (ID_CIDADE) REFERENCES CIDADE (ID_CIDADE)
);

CREATE TABLE CLIENTE(
    CÓDIGO INT NOT NULL,
    NOME VARCHAR(40),
    ENDEREÇO VARCHAR(22),
    ID_CIDADE INT,
    CONSTRAINT PK_CLIENTE PRIMARY KEY(CÓDIGO), CONSTRAINT FK_CLIENTE_CIDADE FOREIGN KEY(ID_CIDADE) REFERENCES CIDADE (ID_CIDADE)
);
    
CREATE TABLE PRODUTO(
    CÓDIGO INT NOT NULL,
    DESCRIÇÃO VARCHAR(15),
    ESTOQUE INT,
    VALOR DECIMAL,
    CNPJ_FORNECEDOR CHAR(14),
    CONSTRAINT PK_PRODUTO PRIMARY KEY(CÓDIGO), CONSTRAINT FK_PRODUTO_FORNECEDOR FOREIGN KEY(CNPJ_FORNECEDOR) REFERENCES FORNECEDOR(CNPJ)
);

CREATE TABLE NOTA(
    NÚMERO INT NOT NULL,
    DATA_NOTA DATE,
    TIPO_PAGTO CHAR(6),
    CÓDIGO_CLIENTE INT,
    CONSTRAINT PK_NOTA PRIMARY KEY(NÚMERO), CONSTRAINT  FK_NOTA_CLIENTE FOREIGN KEY(CÓDIGO_CLIENTE) REFERENCES CLIENTE(CÓDIGO)
);

CREATE TABLE ITEM(
    NÚMERO_NOTA INT,
    CÓDIGO_PRODUTO INT,
    QTDE INT,
    CONSTRAINT PK_NOTA PRIMARY KEY(NÚMERO_NOTA,CÓDIGO_PRODUTO), CONSTRAINT FK_ITEM_NOTA FOREIGN KEY(NÚMERO_NOTA) REFERENCES NOTA(NÚMERO), CONSTRAINT FK_ITEM_PRODUTO FOREIGN KEY(CÓDIGO_PRODUTO) REFERENCES PRODUTO(CÓDIGO)
);
  
INSERT INTO CIDADE VALUES (1,'MARÍLIA');
INSERT INTO CIDADE VALUES (2, 'BAURU');
 
INSERT INTO FORNECEDOR VALUES ('17624092000185','Alpha Soluções em Informática','Rua 9 de Julho, 738',1);
INSERT INTO FORNECEDOR VALUES ('47132482000176','MicroSystem Informática','Av. da Saudade, 98',2);
INSERT INTO FORNECEDOR VALUES ('56021482000112','J.W. Sistemas','Rua Paes Leme, 172',1);
INSERT INTO FORNECEDOR VALUES ('27385372000136','ADABAS S/A','Rua 9 de Julho, 829',1);
SELECT * FROM FORNECEDOR;

INSERT INTO CLIENTE VALUES (1,'Francisco Santos','Rua XV de Novembro, 16',NULL);
INSERT INTO CLIENTE VALUES (2,'Claudete Pereira','Av. da Saudade, 98',NULL);
INSERT INTO CLIENTE VALUES (3,'José Souza','Rua das Bromélias, 871',NULL);
INSERT INTO CLIENTE VALUES (4,'Sônia Santos Oliveira','Rua 9 de Julho, 829',2);
SELECT * FROM CLIENTE;

INSERT INTO PRODUTO VALUES ('100','Micro Pentium IV',14,850.00,'56021482000112');
ALTER TABLE PRODUTO MODIFY COLUMN DESCRIÇÃO VARCHAR(20); /* ALTEREI A COLUNA PARA ACOMODAR O VALOR ACIMA */
INSERT INTO PRODUTO VALUES ('200','Impressora EPSON',8,280.00,'27385372000136');
INSERT INTO PRODUTO VALUES ('300','SCANNER GENIUS',9,190.00,NULL);
INSERT INTO PRODUTO VALUES ('400','Disquete 3M',30,10.00,'17624092000185');
SELECT * FROM PRODUTO;

INSERT INTO NOTA VALUES (1001,'2002-05-18','À vista',2);
ALTER TABLE NOTA MODIFY COLUMN TIPO_PAGTO CHAR(7); /* ALTEREI A COLUNA PARA ACOMODAR O VALOR ACIMA */
INSERT INTO NOTA VALUES (1002,'2002-05-18','À vista', NULL);
INSERT INTO NOTA VALUES (1003,'2002-05-19','À prazo',4);
INSERT INTO NOTA VALUES (1004,'2002-05-20','À vista',3);
SELECT * FROM NOTA;

Questions 1 4 and 5 are already solved. My doubt is how to proceed in lesson 2.

  • You’ll have to use GROUP BY together with SUM to resolve this issue

No answers

Browser other questions tagged

You are not signed in. Login or sign up in order to post.