62,046
社区成员
发帖
与我相关
我的任务
分享
SELECT TOP 1 * FROM tb WHERE IN (SELECT TOP 2 ID FROM tb GROUP BY ID ORDER BY ID DESC)
ORDER BY ASC
或
用 row_Number () grouping 函数。
SELECT MAX(id) as id,fzu FROM (SELECT * FROM table1 WHERE id NOT IN (SELECT id FROM (SELECT MAX(id) as id,fzu FROM table1 GROUP BY fzu) AS T)) AS D GROUP BY fzu
[code=SQL]
CREATE TABLE WT
(
id int,
fzu int
)
INSERT INTO WT
SELECT 5,1 UNION ALL
SELECT 6,1 UNION ALL
SELECT 7,2 UNION ALL
SELECT 8,2 UNION ALL
SELECT 9,2
select t.* from
(
select max(id) id,fzu,row_number() over(order by fzu desc) as num from WT group by fzu
) t
where t.num=2
id fzu num
----------- ----------- --------------------
6 1 2
(1 行受影响)
select min(id) from tb where id in(select top 2 id from tb
order by id desc)