SQL - sub-consulta
Alguém tem alguns exemplos de como fazer sub-consulta no SQL?
agradeço desde já,
Marcos
agradeço desde já,
Marcos
Marcos Conceição
Curtidas 0
Respostas
Afarias
30/12/2003
Como assim?? pode explicar melhor o q deseja??
T+
T+
GOSTEI 0
Marcos Conceição
30/12/2003
Deu um erro.
*** Dados Fornecedor c/ total pedido de cada fornecedor ***
**** PRODUTOS DE COTACAO FORNECIDO PELO FORNECEDOR ***
A idéia é montar um select para retornar os produtos mais barato entre
todos os fornecedores. Tentei montar esse select mas está c/ erro.
Erro dado foi na linha 2 col 1
Exemplo:
Nome produto fornecedor preco
ARROZ FORNECEDOR 1 9,30
ARROZ FORNECEDOR 2 8,90
FEIJAO FORNECEDOR 1 0,70
FEIJAO FORNECEDOR 3 0,72
FEIJAO FORNECEDOR 5 0,69
FARINHA FORNECEDOR 3 0,80
Resultado esperado é os produtos mais barato, conforme abaixo:
Arroz Fornecedor 2 8,90
Feijao Fornecedor 5 0,69
Farinha Fornecedor 3 0,80
Utilizo o Interbase 7.0, alguém pode me ajudar,
agradeço desde já,
*** Dados Fornecedor c/ total pedido de cada fornecedor ***
CREATE TABLE "COTACAOF"
(
"CODIGO" INTEGER NOT NULL,
"EMISSAO" DATE,
"DATA_BASE" DATE,
"FORNECEDOR" INTEGER NOT NULL,
"CONTATO" VARCHAR(35),
"TELE" VARCHAR(14),
"FAX" VARCHAR(14),
"CEL" VARCHAR(14),
"CONDPAGTO" VARCHAR(30),
"TOTAL" DOUBLE PRECISION,
"FRETE" DOUBLE PRECISION,
"OUTRASDESP" VARCHAR(30),
CONSTRAINT "PK_COTACAOF" PRIMARY KEY ("CODIGO")
); **** PRODUTOS DE COTACAO FORNECIDO PELO FORNECEDOR ***
CREATE TABLE "COTACAOP"
(
"CODIGO" INTEGER NOT NULL,
"NOMEPRODUTO" VARCHAR(50) NOT NULL,
"PRODUTO" INTEGER,
"QUANTIDADE" DOUBLE PRECISION,
"PRECO" DOUBLE PRECISION,
"OBSERVACAO" VARCHAR(30),
"TOTAL" COMPUTED BY (quantidade*preco),
CONSTRAINT "PK_COTACAOP" PRIMARY KEY ("CODIGO", "NOMEPRODUTO")
); A idéia é montar um select para retornar os produtos mais barato entre
todos os fornecedores. Tentei montar esse select mas está c/ erro.
select p.nomeproduto,f.fornecedor,p.preco from cotacaof f, cotacaop p, (select p.nomeproduto,min(p.preco) preco from cotacaop p group by p.nomeproduto) minprod where f.codigo=p.codigo and minprod.preco=p.preco order by nomeproduto
Erro dado foi na linha 2 col 1
Exemplo:
Nome produto fornecedor preco
ARROZ FORNECEDOR 1 9,30
ARROZ FORNECEDOR 2 8,90
FEIJAO FORNECEDOR 1 0,70
FEIJAO FORNECEDOR 3 0,72
FEIJAO FORNECEDOR 5 0,69
FARINHA FORNECEDOR 3 0,80
Resultado esperado é os produtos mais barato, conforme abaixo:
Arroz Fornecedor 2 8,90
Feijao Fornecedor 5 0,69
Farinha Fornecedor 3 0,80
Utilizo o Interbase 7.0, alguém pode me ajudar,
agradeço desde já,
GOSTEI 0
Afarias
30/12/2003
Ok, o IB não permite este tipo de select. Vc deve criar uma view para a sua ´sub-query´ e usar a view.
T+
T+
GOSTEI 0