PDA

Ver la Versión Completa : Consulta SQL


chinosoft
25-08-2008, 13:25:22
Buenas:

Estoy haciendo una aplicacion de escritorio (con FireBird), donde necesito un listado de los ultimos pedidos realizados por cada cliente.

En la tabla pedido tengo los siguientes campos

numero, fecha, id_cliente, nombredelpedido

y la consulta que realizo es la siguiente


select
numero, nombre

from
pedido

where
numero in (select max(numero) as numero, id_cliente from trabajo group by id_cliente);


esta consulta me da un error
"Invalid token. Dynamic SQL Error. SQL error code = -104. Invalid command.
count of column list and variable list do not match."

Agradesco cualquier pista que puedan tirarme!

desde ya agradecido!

:)

pcicom
25-08-2008, 13:40:14
Generalmente las ordenes o comandos MAX, SUM, MIN... deben de estar despues de los campos que utilizaras en GROUP BY..


select numero, nombre from pedido
where
numero in (select max(numero) as numero from trabajo group
by id_cliente);



OTRA FORMA SERIA



select a.id_cliente,b.nombre from trabajo a
LEFT JOIN pedido b ON a.id_cliente=b.id_cliente



Saludos..

Caro
25-08-2008, 13:41:26
Hola chinosoft, te da error porque en tu segunda consulta estas devolviendos 2 campos, para que lo tome el in debes devolver solo un campo


select numero, nombre
from pedido
where numero in (select max(numero) as numero from trabajo group by id_cliente);


Saluditos

chinosoft
25-08-2008, 13:49:32
Muchas gracias a los 2! por su pronta respuestaaaa!!

Caro tenias razon con los de en mi segunda consulta, esta devolviendo 2 campos.

Muchas graciasss