Código SQL:
Ver originalCREATE TABLE #temp
(
orden INT,
id_cliente INT,
fecha datetime
)
INSERT INTO #temp (orden,id_cliente,fecha) VALUES (1,2,'02/06/2012')
INSERT INTO #temp (orden,id_cliente,fecha) VALUES (2,2,'02/07/2012')
INSERT INTO #temp (orden,id_cliente,fecha) VALUES (3,3,'02/07/2011')
INSERT INTO #temp (orden,id_cliente,fecha) VALUES (4,4,'02/07/2011')
INSERT INTO #temp (orden,id_cliente,fecha) VALUES (5,2,'02/07/2011')
INSERT INTO #temp (orden,id_cliente,fecha) VALUES (6,2,'02/07/2012')
INSERT INTO #temp (orden,id_cliente,fecha) VALUES (7,2,'02/08/2012')
INSERT INTO #temp (orden,id_cliente,fecha) VALUES (8,2,'02/07/2011')
SELECT orden, id_cliente, fecha FROM (
SELECT ROW_NUMBER () OVER ( PARTITION BY id_cliente ORDER BY fecha ASC ) AS RN, * FROM #temp
) t1 WHERE rn<=3
Prueba con algo asi :)
Saludos!