![]() |
Consulta un poco particular.
Hola a todos!
Tengo una tabla llamada "transacciones" con los siguientes campos: - idtransaccion (autonumérico identificativo de la transacción) - idcliente - idproducto En ella se registran las transacciones de compra de los clientes. En ella pueden haber varias transacciones de un mismo cliente, y hasta varias transacciones de un mismo cliente y un mismo producto. Necesito obtener el listado con todos los clientes distintos que existan en la tabla junto con el último producto comprado, es decir el que tenga la transacción mayor. Por más que he intentado crear una sentencia sql que me devuelva estos resultados no lo consigo. Alguien me podría hechar una mano?. Gracias |
Más o menos:
Ojo donde pongo Last dependiendo del motro puede ser Max. Un Saludo. |
Gracias Marcos,
Tu consulta no me sirve, ya que me devuelve el producto con mayor "idproducto", y no el producto con mayor "idtransaccion". |
Cita:
Saludos |
Cita:
Select idcliente, max(transaccion) as ultima_transaccion From miTable Group By idproducto,idcliente,ultima_transaccion He probado tb con esta pero tampoco: Select distinct(oricodi), max(sertran) as ultima_transaccion From dark_todos Group By tracodi,oricodi,ultima_transaccion Gracias. |
Una Prueba
Si pones:
Select distinct(m1.idcliente),m1.transaccion from miTable m1 where m1.transaccion = (Select max(m2.Transaccion) from miTabla m2 where m1.idcliente = m2.idCliente ). |
Cita:
Esto era exactamente lo que buscaba y funciona perfectamente. Muchas gracias!!! :) |
La franja horaria es GMT +2. Ahora son las 12:51:51. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi