GARANTIR DESCONTO

Fórum Select com três tabelas relacionadas... #346932

02/10/2007

0

Tô precisando fazer um select com envolvendo três tabelas. Pra começar vou colocar as estruturas das tabelas que são PROJETO, MATERIAL E LANCAMENTO_PROJETO.

Tabela PROJETO:
/******************************************************************************/
/****                                Tables                                ****/
/******************************************************************************/



CREATE TABLE PROJETO (
    COD_PROJETO    VARCHAR(6) NOT NULL,
    NOME_PROJETO   VARCHAR(70),
    DATA_REGISTRO  DATE,
    GRUPO1         VARCHAR(4),
    DESCRICAO1     VARCHAR(30),
    GRUPO2         VARCHAR(4),
    DESCRICAO2     VARCHAR(30),
    GRUPO3         VARCHAR(4),
    DESCRICAO3     VARCHAR(30),
    GRUPO4         VARCHAR(4),
    DESCRICAO4     VARCHAR(30),
    GRUPO5         VARCHAR(4),
    DESCRICAO5     VARCHAR(30),
    GRUPO6         VARCHAR(4),
    DESCRICAO6     VARCHAR(30),
    GRUPO7         VARCHAR(4),
    DESCRICAO7     VARCHAR(30),
    GRUPO8         VARCHAR(4),
    DESCRICAO8     VARCHAR(30),
    GRUPO9         VARCHAR(4),
    DESCRICAO9     VARCHAR(30),
    GRUPO10        VARCHAR(4),
    DESCRICAO10    VARCHAR(30)
);




/******************************************************************************/
/****                             Primary Keys                             ****/
/******************************************************************************/

ALTER TABLE PROJETO ADD CONSTRAINT PK_PROJETO PRIMARY KEY (COD_PROJETO);


/******************************************************************************/
/****                              Privileges                              ****/
/******************************************************************************/


Tabela MATERIAL:
/******************************************************************************/
/****                                Tables                                ****/
/******************************************************************************/



CREATE TABLE MATERIAL (
    COD_ORDENADO    VARCHAR(20) NOT NULL,
    DESCRICAO       VARCHAR(70) COLLATE PT_BR,
    UN              VARCHAR(2),
    PRECO_UNITARIO  NUMERIC(15,2)
);




/******************************************************************************/
/****                             Primary Keys                             ****/
/******************************************************************************/

ALTER TABLE MATERIAL ADD CONSTRAINT PK_MATERIAL PRIMARY KEY (COD_ORDENADO);


/******************************************************************************/
/****                              Privileges                              ****/
/******************************************************************************/


Tabela LANCAMENTO_PROJETO:
/******************************************************************************/
/****                                Tables                                ****/
/******************************************************************************/


CREATE GENERATOR ID_LANCAMENTO_PROJETO;

CREATE TABLE LANCAMENTO_PROJETO (
    ID_LANCAMENTO_PROJETO  INTEGER NOT NULL,
    COD_PROJETO            VARCHAR(6) NOT NULL,
    GRUPO                  VARCHAR(10),
    COD_ORDENADO_M         VARCHAR(20) NOT NULL,
    QUANTIDADE_M           VARCHAR(20),
    TOTAL                  NUMERIC(15,2)
);




/******************************************************************************/
/****                             Primary Keys                             ****/
/******************************************************************************/

ALTER TABLE LANCAMENTO_PROJETO ADD CONSTRAINT PK_LANCAMENTO_PROJETO PRIMARY KEY (ID_LANCAMENTO_PROJETO);


/******************************************************************************/
/****                             Foreign Keys                             ****/
/******************************************************************************/

ALTER TABLE LANCAMENTO_PROJETO ADD CONSTRAINT FK_LANCAMENTO_PROJETO_1 FOREIGN KEY (COD_PROJETO) REFERENCES PROJETO (COD_PROJETO) ON DELETE CASCADE;
ALTER TABLE LANCAMENTO_PROJETO ADD CONSTRAINT FK_LANCAMENTO_PROJETO_2 FOREIGN KEY (COD_ORDENADO_M) REFERENCES MATERIAL (COD_ORDENADO);


/******************************************************************************/
/****                               Triggers                               ****/
/******************************************************************************/


SET TERM ^ ;


/******************************************************************************/
/****                         Triggers for tables                          ****/
/******************************************************************************/



/* Trigger: LANCAMENTO_PROJETO_BI */
CREATE TRIGGER LANCAMENTO_PROJETO_BI FOR LANCAMENTO_PROJETO
ACTIVE BEFORE INSERT POSITION 0
AS
BEGIN
  IF (NEW.ID_LANCAMENTO_PROJETO IS NULL) THEN
    NEW.ID_LANCAMENTO_PROJETO = GEN_ID(ID_LANCAMENTO_PROJETO,1);
END
^


SET TERM ; ^



/******************************************************************************/
/****                              Privileges                              ****/
/******************************************************************************/


Tenho que fazer o select da tabela LANCAMENTO_PROJETO relacionando com os campos descricao un e preco_unitario da tabela MATERIAL.


Jpauloss

Jpauloss

Responder

Posts

02/10/2007

Roneto

tenta isso:

select
LANCAMENTO_PROJETO.*,
MATERIAL.DESCRICAO,
MATERIAL.UN,
MATERIAL.PRECO_UNITARIO
from
LANCAMENTO_PROJETO inner join MATERIAL on
LANCAMENTO_PROJETO.COD_ORDENADO_M = MATERIAL.COD_ORDENADO


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar