Array
(
)

Resultado TOP 5

Rvanchez
   - 28 jun 2007

Pessoal,
Tenho um select que retorna 5 resultados aleatoriamente de uma tabela.

SELECTTOP 5 GrpMarca.CodGrpMarca, GrpMarca.DscGrpMarca, Estoque.CodMarca, Estoque.CodProduto, Estoque.CodTipoProd,
Estoque.CodLocal, Estoque.Lote, Estoque.CodTamanho, Estoque.CodCor, Estoque.QtdeTotal, Produtos.CodigoDeBarras,
Produtos.DscProduto, Produtos.RefProduto, Marcas.DscMarca
FROMGrpMarca
INNER JOIN GrpMarcaXMarca ON GrpMarcaXMarca.CodGrpMarca = GrpMarca.CodGrpMarca
INNER JOIN Estoque ON Estoque.CodMarca = GrpMarcaXMarca.CodMarca
INNER JOIN Produtos ON Produtos.CodTipoProd = Estoque.CodTipoProd And
Produtos.CodProduto = Estoque.CodProduto And Produtos.CodMarca = Estoque.CodMarca
INNER JOIN Marcas ON Marcas.CodMarca = Estoque.CodMarca
WHEREEstoque.CodMarca Between ´´ And ´ZZZZZZ´
ORDER BY NewID ()

Gostaria de ajuda para saber como faço para retornar 5 resultados por marca de acordo com o WHERE.

Agradeço desde ja se puderem me ajudar.

Psergio.p
   - 10 jul 2007

Caro amigo, esta um pouco confusa a sua dúvida, pode especifica-la melhor?

Emerson
   - 14 jul 2007

#CódigoSELECT TOP 5
GrpMarca.CodGrpMarca, GrpMarca.DscGrpMarca, Estoque.CodMarca,
Estoque.CodProduto, Estoque.CodTipoProd, Estoque.CodLocal,
Estoque.Lote, Estoque.CodTamanho, Estoque.CodCor,
Estoque.QtdeTotal, Produtos.CodigoDeBarras, Produtos.DscProduto,
Produtos.RefProduto, Marcas.DscMarca
FROM
GrpMarca
INNER JOIN
GrpMarcaXMarca ON GrpMarcaXMarca.CodGrpMarca = GrpMarca.CodGrpMarca
INNER JOIN
Estoque ON Estoque.CodMarca = GrpMarcaXMarca.CodMarca
INNER JOIN
Produtos ON Produtos.CodTipoProd = Estoque.CodTipoProd And
Produtos.CodProduto = Estoque.CodProduto And
Produtos.CodMarca = Estoque.CodMarca
INNER JOIN
Marcas ON Marcas.CodMarca = Estoque.CodMarca
WHERE
Estoque.CodMarca Between ´´ And ´ZZZZZZ´
ORDER BY
Estoque.CodMarca

esse código retorna os 5 primeiros registros de acordo com a marca, porém seu where está selecionando todas as marcas (´´ a ´ZZZZZZ´ irá trazer todos os registros, então nem seria necessário o where)

Psergio.p
   - 18 jul 2007

a clausula TOP trará os 5 primeiros registros e como a sua instrução esta classificando pelo código da marca talvez retorne 5 registros da mesma marca. Você precisa dos primeiros registros de cada marca?