Ainda 10 mais locados ...

Delphi

12/12/2004

já consegui fazer a sql, o problema é que ela pega todos os locados da tabela lisstando todos os locados, naum consegui fazer os 10 primeiros, veja aqui:

Selecionar os 10 mais vendidos

Select count(*), w7.cd_produto, f.ds_titulo1 from wcd0007 w7
Inner Join wcd0004 F on w7.cd_produto = F.cd_filme
where Tp_Tipo = ´F´
Group By w7.cd_produto,f.ds_titulo1
HAVING count(cd_cliente) <= 10


onde wcd0007 é a tabela de filmes locados e wcd0004 os filmes.


O4pr3ndiz

O4pr3ndiz

Curtidas 0

Respostas

Gandalf.nho

Gandalf.nho

12/12/2004

Qual o seu banco de dados?


GOSTEI 0
Aroldo Zanela

Aroldo Zanela

12/12/2004

Colega,

A sua instrução está mostrando todos os resultados que possuem uma quantidade de registros menor ou igual a dez.
Você precisa é limitar os dez primeiros. Para isso, é necessário sabermos em qual banco você está trabalhando. (Rows, Limit, Top, first, etc).
Se for um banco de dados desktop (Paradox ou xBase), deverá fazer isto no código ou usar uma tabela temporária.


GOSTEI 0
O4pr3ndiz

O4pr3ndiz

12/12/2004

paradox...
eu preciso para paradox......


GOSTEI 0
Gandalf.nho

Gandalf.nho

12/12/2004

Como paradox não tem suporte para isso, você terá que limitar os registros via código mesmo...


GOSTEI 0
O4pr3ndiz

O4pr3ndiz

12/12/2004

amigo, eu preciso que alguem em ajude no código, pois eu naun tenho nenhuma idéia como seja, dizer que eu tenho que fazer via código, naum vai me ajudar em nda....


GOSTEI 0
Gandalf.nho

Gandalf.nho

12/12/2004

Uma maneira simples seria fazer um laço assim:
Coloque a SQL a ser ´contada´ num TQuery e faça o código semelhante ao embaixo.

for x := 1 to 10 then
begin
// Primeiro você irá copiar os valores dos campos desejados e armazenar em outro lugar. Uma sugestão seria uma tabela em memória como o TClientDataSet ou o que tem na paleta RX.
Query1.Next // Passe para o próximo registro
end

Ao sair do laço você terá os 10 mais.


GOSTEI 0
O4pr3ndiz

O4pr3ndiz

12/12/2004

esta dica me iluminou a idéia... obrigado...


GOSTEI 0
POSTAR