Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Duda de consulta

Estas en el tema de Duda de consulta en el foro de SQL Server en Foros del Web. Buenas tardes lo que pasa que tengo el siguiente problema. Tengo una tabla que se llama pedidos que tiene 3 campos que tiene un orden_id, ...
  #1 (permalink)  
Antiguo 13/06/2011, 15:19
 
Fecha de Ingreso: junio-2009
Mensajes: 115
Antigüedad: 14 años, 10 meses
Puntos: 1
Duda de consulta

Buenas tardes lo que pasa que tengo el siguiente problema.
Tengo una tabla que se llama pedidos que tiene 3 campos que tiene un orden_id, un cliente_id, fechaVenta, con los siguiente datos

orden_id un cliente_id fechaVenta
01 | 02 | 02/06/2012
02 | 02 | 02/07/2012
03 | 03 | 02/07/2011
04 | 04 | 02/07/2011
05 | 02 | 02/07/2011
06 | 02 | 02/07/2012
07 | 02 | 02/08/2012
08 | 02 | 02/07/2011

lo que quiero sacar de esta tabla es los últimos 3 pedidos del cliente, por ejemplo el 02, gracias y espero que alguién me pueda ayudar.
  #2 (permalink)  
Antiguo 13/06/2011, 15:37
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Duda de consulta

Código SQL:
Ver original
  1. CREATE TABLE #temp
  2. (
  3. orden INT,
  4. id_cliente INT,
  5. fecha datetime
  6. )
  7.  
  8. INSERT INTO #temp (orden,id_cliente,fecha) VALUES (1,2,'02/06/2012')
  9. INSERT INTO #temp (orden,id_cliente,fecha) VALUES (2,2,'02/07/2012')
  10. INSERT INTO #temp (orden,id_cliente,fecha) VALUES (3,3,'02/07/2011')
  11. INSERT INTO #temp (orden,id_cliente,fecha) VALUES (4,4,'02/07/2011')
  12. INSERT INTO #temp (orden,id_cliente,fecha) VALUES (5,2,'02/07/2011')
  13. INSERT INTO #temp (orden,id_cliente,fecha) VALUES (6,2,'02/07/2012')
  14. INSERT INTO #temp (orden,id_cliente,fecha) VALUES (7,2,'02/08/2012')
  15. INSERT INTO #temp (orden,id_cliente,fecha) VALUES (8,2,'02/07/2011')
  16.  
  17. SELECT orden, id_cliente, fecha FROM (
  18. SELECT ROW_NUMBER () OVER ( PARTITION BY id_cliente ORDER BY fecha ASC ) AS RN, * FROM #temp
  19. ) t1 WHERE rn<=3

Prueba con algo asi :)

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:20.