Consulta SQL...
Pessoal estou precisando muito desenrolar esse galho, preciso fazer uma consulta na Tabela MARMITAS_PEDIDO onde preciso trazer o [b:f6c4d1c2a0]consolidado[/b:f6c4d1c2a0] das marmitas vendidas em uma determinada data.
[b:f6c4d1c2a0]A consulta tera q trazer a seguinte informação:[/b:f6c4d1c2a0]
MARMITA P ==> TOTAL VENDIDO = 32 UND.
MARMITA M==> TOTAL VENDIDO = 15 UND.
MARMITA G ==>TOTAL VENDIDO = 07 UND.
segue abaixo o meu SQL q n esta dando certo,da o seguinte erro:
[b:f6c4d1c2a0]Invalid expression in the select list (not contained in either an aggregate function or the GROUP BY clause).[/b:f6c4d1c2a0]
*********************************************
[b:f6c4d1c2a0]select[/b:f6c4d1c2a0] MARMITAS_PEDIDO.QNTDE,
MARMITA.DESCRICAO,
CLIENTES.NOMECLI,
CAST(PEDIDOS.DATAPEDIDO AS DATE) AS DATAPEDIDO,
SUM(MARMITAS_PEDIDO.QNTDE)
[b:f6c4d1c2a0]from[/b:f6c4d1c2a0] MARMITAS_PEDIDO
inner join MARMITA on (MARMITAS_PEDIDO.IDMARMITA = MARMITA.IDMARMITA )
inner join PEDIDOS on (MARMITAS_PEDIDO.IDPEDIDO = PEDIDOS.IDPEDIDO)
inner join CLIENTES on (PEDIDOS.IDCLIENTE = CLIENTES.IDCLIENTE)
[b:f6c4d1c2a0]where[/b:f6c4d1c2a0] PEDIDOS.DATAPEDIDO CONTAINING :DATAPEDID
[b:f6c4d1c2a0]group by[/b:f6c4d1c2a0] MARMITA.DESCRICAO
*********************************************
[b:f6c4d1c2a0]A consulta tera q trazer a seguinte informação:[/b:f6c4d1c2a0]
MARMITA P ==> TOTAL VENDIDO = 32 UND.
MARMITA M==> TOTAL VENDIDO = 15 UND.
MARMITA G ==>TOTAL VENDIDO = 07 UND.
segue abaixo o meu SQL q n esta dando certo,da o seguinte erro:
[b:f6c4d1c2a0]Invalid expression in the select list (not contained in either an aggregate function or the GROUP BY clause).[/b:f6c4d1c2a0]
*********************************************
[b:f6c4d1c2a0]select[/b:f6c4d1c2a0] MARMITAS_PEDIDO.QNTDE,
MARMITA.DESCRICAO,
CLIENTES.NOMECLI,
CAST(PEDIDOS.DATAPEDIDO AS DATE) AS DATAPEDIDO,
SUM(MARMITAS_PEDIDO.QNTDE)
[b:f6c4d1c2a0]from[/b:f6c4d1c2a0] MARMITAS_PEDIDO
inner join MARMITA on (MARMITAS_PEDIDO.IDMARMITA = MARMITA.IDMARMITA )
inner join PEDIDOS on (MARMITAS_PEDIDO.IDPEDIDO = PEDIDOS.IDPEDIDO)
inner join CLIENTES on (PEDIDOS.IDCLIENTE = CLIENTES.IDCLIENTE)
[b:f6c4d1c2a0]where[/b:f6c4d1c2a0] PEDIDOS.DATAPEDIDO CONTAINING :DATAPEDID
[b:f6c4d1c2a0]group by[/b:f6c4d1c2a0] MARMITA.DESCRICAO
*********************************************
Hviana
Curtidas 0
Respostas
Kotho
26/04/2005
Pelo que entendi em seu relatório, você não precisará agrupar por QNTDE. Agora, você não disse nada com relação ao NOMECLI. Vamos considerar que seu relatório vai agrupar por data, cliente e marmita...
[code]
select
CAST(PEDIDOS.DATAPEDIDO AS DATE) AS DATAPEDIDO,
CLIENTES.NOMECLI,
MARMITA.DESCRICAO,
SUM(MARMITAS_PEDIDO.QNTDE)
from
MARMITAS_PEDIDO
inner join
MARMITA
on
(MARMITAS_PEDIDO.IDMARMITA = MARMITA.IDMARMITA )
inner join
PEDIDOS
on
(MARMITAS_PEDIDO.IDPEDIDO = PEDIDOS.IDPEDIDO)
inner join
CLIENTES
on
(PEDIDOS.IDCLIENTE = CLIENTES.IDCLIENTE)
where
PEDIDOS.DATAPEDIDO CONTAINING :DATAPEDID
group by
CAST(PEDIDOS.DATAPEDIDO AS DATE),
CLIENTES.NOMECLI,
MARMITA.DESCRICAO
[\code]
Se der erro no CAST do group by, tente deixar só o campo...
Caso o seu relatório não seja agrupado por cliente, então tire do select e do group by.
Curiosidade... pq vc utiliza CONTAINING???
[code]
select
CAST(PEDIDOS.DATAPEDIDO AS DATE) AS DATAPEDIDO,
CLIENTES.NOMECLI,
MARMITA.DESCRICAO,
SUM(MARMITAS_PEDIDO.QNTDE)
from
MARMITAS_PEDIDO
inner join
MARMITA
on
(MARMITAS_PEDIDO.IDMARMITA = MARMITA.IDMARMITA )
inner join
PEDIDOS
on
(MARMITAS_PEDIDO.IDPEDIDO = PEDIDOS.IDPEDIDO)
inner join
CLIENTES
on
(PEDIDOS.IDCLIENTE = CLIENTES.IDCLIENTE)
where
PEDIDOS.DATAPEDIDO CONTAINING :DATAPEDID
group by
CAST(PEDIDOS.DATAPEDIDO AS DATE),
CLIENTES.NOMECLI,
MARMITA.DESCRICAO
[\code]
Se der erro no CAST do group by, tente deixar só o campo...
Caso o seu relatório não seja agrupado por cliente, então tire do select e do group by.
Curiosidade... pq vc utiliza CONTAINING???
GOSTEI 0
Hviana
26/04/2005
Pessoal estou precisando muito desenrolar esse galho, preciso fazer uma consulta na Tabela MARMITAS_PEDIDO onde preciso trazer o [b:00a09af482]consolidado[/b:00a09af482] das marmitas vendidas em uma determinada data.(Preciso agrupar pelo campo descrição)
[b:00a09af482]A consulta tera q trazer a seguinte informação:[/b:00a09af482]
[b:00a09af482]DESCRIÇÃO[/b:00a09af482] [b:00a09af482]QNTDE[/b:00a09af482]
MARMITA P ==> TOTAL VENDIDO = 32 UND.
MARMITA M==> TOTAL VENDIDO = 15 UND.
MARMITA G ==>TOTAL VENDIDO = 07 UND.
segue abaixo o meu SQL q n esta dando certo,da o seguinte erro:
[b:00a09af482]Invalid expression in the select list (not contained in either an aggregate function or the GROUP BY clause).[/b:00a09af482]
*********************************************
[b:00a09af482]select[/b:00a09af482] MARMITAS_PEDIDO.QNTDE,
MARMITA.DESCRICAO,
CLIENTES.NOMECLI,
CAST(PEDIDOS.DATAPEDIDO AS DATE) AS DATAPEDIDO,
SUM(MARMITAS_PEDIDO.QNTDE)
[b:00a09af482]from[/b:00a09af482] MARMITAS_PEDIDO
inner join MARMITA on (MARMITAS_PEDIDO.IDMARMITA = MARMITA.IDMARMITA )
inner join PEDIDOS on (MARMITAS_PEDIDO.IDPEDIDO = PEDIDOS.IDPEDIDO)
inner join CLIENTES on (PEDIDOS.IDCLIENTE = CLIENTES.IDCLIENTE)
[b:00a09af482]where[/b:00a09af482] PEDIDOS.DATAPEDIDO CONTAINING :DATAPEDID
[b:00a09af482]group by[/b:00a09af482] MARMITA.DESCRICAO
*********************************************
GOSTEI 0
Emerson Nascimento
26/04/2005
DESCRIÇÃO QNTDE
MARMITA P ==> TOTAL VENDIDO = 32 UND.
MARMITA M==> TOTAL VENDIDO = 15 UND.
MARMITA G ==>TOTAL VENDIDO = 07 UND.
MARMITA P ==> TOTAL VENDIDO = 32 UND.
MARMITA M==> TOTAL VENDIDO = 15 UND.
MARMITA G ==>TOTAL VENDIDO = 07 UND.
select M.DESCRICAO, Sum(MP.QNTDE) from PEDIDOS P inner join MARMITAS_PEDIDO MP on (MP.IDPEDIDO=P.IDPEDIDO) inner join MARMITA M on (M.IDMARMITA = MP.IDMARMITA) where P.DATAPEDIDO=:DATAPEDID group by M.DESCRICAO
GOSTEI 0