GARANTIR DESCONTO

Fórum como exibir consulta com ranking entre duas datas? #348132

29/10/2007

0

Olá amigos do forum, uma boa tarde a todos.
Vamos as dúvidas.

Preciso emitir um relatório das músicas mais pedidas durante um período, só que com rankin, a minha tabela, é assim
id_musica
musida
data
valor

quando é pedido uma música, é inserida aqui o nome da musica e o valor de número 1, sempre será inserido o valor 1. quando faço a consulta via sql o código é assim

Código:

select nomecantor, count(nomecantor)as rank from arquitetos 
group by 1 
order by rank desc 



ai ao invés dele exibir assim:
zeze di camargo - 1
zeze di camargo - 1
vanessa camargo - 1

ele irá exibir assim
zeze di camargo 2
vanessa camargo 1

entaum criei uma tela de consulta e coloquei dois timerpicker para fazer o ranking entre as datas pedidas, pois tem o timerdatainicio e timerdatafinal

como fazer essa consulta?, como colocar esse código no botao, ou faremos direto na string da sql?

aguardo a resposta dos amigos, obrigado.


Junior-programador

Junior-programador

Responder

Posts

29/10/2007

Orc

da um where no fim do sql:

where data between :dat1 and :dat2
parambyname(´dat1´).asdatetime := datetimepicker1.date;
parambyname(´dat2´).asdatetime := datetimepicker2.date;
tabela.open;


Responder

Gostei + 0

29/10/2007

Junior-programador

infelizmente nao deu certo, ele me da o erro de token:where

novamente segue abaixo a string da sql

select Nome_maispedidas,count(Valor)as rank from tbmusicas
group by nome_maispedidas
order by rank desc


este código esta direto na query, e tenho um botao na tela e mais dois timepicker, como fazer consulta, entre datas.
obrigado amigo.


Responder

Gostei + 0

30/10/2007

Orc

usa mais ou menos assim ao inves do where usa o having

SELECT
IdFamilia, Sum(Stock) AS StockAtual
FROM
Produtos
GROUP BY
IdFamilia
HAVING
StockAtual > 100


Responder

Gostei + 0

30/10/2007

Junior-programador

Mudei para o codigo abaixo, mas da erro token - select
   query1.Close;
   query1.sql.add(´select nome_maispedidas, teste, count(valor)as rank from tbmusicas´);
   query1.sql.add(´having data_maispedidas between :pdataini and :pdatafin´);
   query1.SQL.Add(´parambyname(pdataini).asdatetime := datetimepicker1.date´);
   query1.SQL.Add(´parambyname(pdatafin).asdatetime := datetimepicker2.date´);
   query1.SQL.add(´group by nome_maispedidas´);
   query1.sql.add(´order by rank desc´);
   query1.Open;


aguardo retorno, obrigado.


Responder

Gostei + 0

30/10/2007

George_piaulino

query1.parambyname(pdataini).asdatetime := datetimepicker1.date query1.parambyname(pdatafin).asdatetime := datetimepicker2.date+´ 23:59:59´


Responder

Gostei + 0

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

Aceitar