Fórum SQL left join com first e count #55976
17/05/2006
0
Amigos, estou com mais um problema preciso fazer uma consulta que me retorne os 10 filmes mais locados nos ultimos 15 dias
a tabela LOCACAODET GRAVA todos os detalhes das locações
A tabela Filmes grava os dados do filme
pra trazer os 10 ultimos filmes ta beleza isso aqui funciona
so que isso me traz o codigo do filme e a quantidade locada gostaria que me retornasse tambem o nome do filme que esta na ´tabela filmes´ mas nao to conseguindo
tentei assim, mais nao da certo da um erro ´invalid colunm reference´
sera que alguem pode me ajudar
desde ja agradeço....
Obrigado....
Delphi 7.0 e Firebird 1.5
a tabela LOCACAODET GRAVA todos os detalhes das locações
A tabela Filmes grava os dados do filme
pra trazer os 10 ultimos filmes ta beleza isso aqui funciona
select first 10 idproduto, count(idproduto) qtdlocacoes from locacaodet where FINALIDADE = ´LOCAÇÃO´ and datalocacao between (current_date - 15) and current_date group by idproduto order by 2 desc
so que isso me traz o codigo do filme e a quantidade locada gostaria que me retornasse tambem o nome do filme que esta na ´tabela filmes´ mas nao to conseguindo
tentei assim, mais nao da certo da um erro ´invalid colunm reference´
select first 10 locacaodet.idproduto, count(idproduto) qtdlocacoes, filmes.nome from locacaodet left join filmes on locacaodet.idproduto = filmes.id where locacaodet.FINALIDADE = ´LOCAÇÃO´ and locacaodet.datalocacao between (current_date - 15) and current_date group by idproduto order by 2 desc
sera que alguem pode me ajudar
desde ja agradeço....
Obrigado....
Delphi 7.0 e Firebird 1.5
Marcusbraga
Curtir tópico
+ 0
Responder
Posts
17/05/2006
Sremulador
select first 10 locacaodet.idproduto, count(idproduto) qtdlocacoes, filmes.nome from locacaodet left join filmes on locacaodet.idproduto = filmes.id where locacaodet.FINALIDADE = ´LOCAÇÃO´ and locacaodet.datalocacao between (current_date - 15) and current_date group by idproduto, filmes.nome order by 2 desc
agora
Responder
Gostei + 0
17/05/2006
Marcusbraga
Deu Certo
Nossa, obrigado sremulador deu certo não to acreditando ate agora, que eu tava me batendo desde o meio dia so por causa desse detalhe, agora que fui me liga.
fiz algumas alteraçõe pra ver se corrigia esse erro e nada mas funcionando perfeito se alguem interessa o meu codigo ficou assim agora
Obriagado, sremulador
Nossa, obrigado sremulador deu certo não to acreditando ate agora, que eu tava me batendo desde o meio dia so por causa desse detalhe, agora que fui me liga.
fiz algumas alteraçõe pra ver se corrigia esse erro e nada mas funcionando perfeito se alguem interessa o meu codigo ficou assim agora
select first 10 loc1.idproduto, fil1.nome, (select count(loc2.idproduto) from locacaodet loc2 inner join filmes fil2 on (loc2.idproduto = fil2.id) where loc2.idproduto = loc1.idproduto) quantidade from locacaodet loc1 left join filmes fil1 on (loc1.idproduto = fil1.id) where loc1.FINALIDADE = ´LOCAÇÃO´ and loc1.datalocacao between (current_date - 300) and current_date group by locacaodet.idproduto , filmes.nome order by 3 desc
Obriagado, sremulador
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)