我有這樣如何從表中獲得幾個最高值?
id f1
--------------
1 2000-01-01
1 2001-01-01
1 2002-01-01
1 2003-01-01
一個表,我想說,最近3日在一排
CREATE TABLE Test
(
id INT NOT NULL,
f1 DATETIME NOT NULL,
)
INSERT INTO Test (id, f1) VALUES (1, '1/1/2000')
INSERT INTO Test (id, f1) VALUES (1, '1/1/2001')
INSERT INTO Test (id, f1) VALUES (1, '1/1/2002')
INSERT INTO Test (id, f1) VALUES (1, '1/1/2003')
SELECT T1.* FROM Test as T1
試圖像
SELECT T1.*,T2.*
FROM Test AS T1
LEFT OUTER JOIN Test AS T2 ON T1.id = T2.id AND (T2.f1 > T1.f1)
爲什麼它必須全部排成一行?只有一列會容易得多。 – 2010-10-29 18:24:20
我認爲將它們作爲行返回更合理,而不是將多行返回1行。 – dotariel 2010-10-29 18:27:21
你需要每個ID的三個最新日期嗎? (我注意到你的ID總是1) – 2010-10-29 19:23:46