我有這樣的數據:檢索最新記錄每個客戶
ID NAME DATE
3 JOHN 2011-08-08
2 YOKO 2010-07-07
1 JOHN 2009-06-06
碼(用於SQL Server 2005):
DECLARE @TESTABLE TABLE (id int, name char(4), date smalldatetime)
INSERT INTO @TESTABLE VALUES (3, 'JOHN', '2011-08-08')
INSERT INTO @TESTABLE VALUES (2, 'YOKO', '2010-07-07')
INSERT INTO @TESTABLE VALUES (1, 'JOHN', '2009-06-06')
我想,每一個名稱,編號有最近的DATE。像這樣:
3 JOHN 2011-08-08
2 YOKO 2010-07-07
完成此操作的最優雅方式是什麼?
+1對於保留字謹慎 – JNK
這是優雅的。它比JOIN 2版本更高效(更快)嗎? –
@idevlop - 我認爲速度將取決於您的索引而不是查詢。我認爲這與其他版本之間的差異應該是最小的性能。 – JNK