
Obtener las ultimas compras
Publicado por pedro jorge (2 intervenciones) el 05/11/2016 06:46:59
Que tal, llevo una semana y no logro armar una consulta que me de el ultimo proveedor al cual se le compro, tengo una consulta previa donde se encuentran los articulos que fueron adquiridos de acuerdo a lo que el usuario requiere.
Cabecero
folio;fecha; proveedor
1;20161001;1
2;20161002;2
3;20161002;1
4;20161005;3
5;20161007;2
detalle
folio;clave;cantidad
1;01;5
2;01;7
2;02;7
3;02;4
4;01;9(*)
4;02;7
4;03;2
5;02;8(*)
5;03;9(*)
La idea es que el resultado sea:
clave;proveedor;cant
01;1;3
02;2;8
03;2,9
El campo en comun es folio y requiero determinar cuales fueron los ultimos provedores y se determina por la fecha mas reciente.
Lo ideal seria que se pudiera hacer asi:
select d.clave; c.proveedor; max(c.fecha), d.cant from ccompras c inner join dcompras d on c.folio = d.folio group by d.clave
Pero group by requiere que todos los campos sin funcion (max,count) se incluyan, alguna sugerencia?
El motor de db es ms sql.
Cabecero
folio;fecha; proveedor
1;20161001;1
2;20161002;2
3;20161002;1
4;20161005;3
5;20161007;2
detalle
folio;clave;cantidad
1;01;5
2;01;7
2;02;7
3;02;4
4;01;9(*)
4;02;7
4;03;2
5;02;8(*)
5;03;9(*)
La idea es que el resultado sea:
clave;proveedor;cant
01;1;3
02;2;8
03;2,9
El campo en comun es folio y requiero determinar cuales fueron los ultimos provedores y se determina por la fecha mas reciente.
Lo ideal seria que se pudiera hacer asi:
select d.clave; c.proveedor; max(c.fecha), d.cant from ccompras c inner join dcompras d on c.folio = d.folio group by d.clave
Pero group by requiere que todos los campos sin funcion (max,count) se incluyan, alguna sugerencia?
El motor de db es ms sql.
Valora esta pregunta


0