mysql、sqlserver、oracle取前N条记录
MySql:
select * from table limit N
Sql Server:
select top N * from table (order by id)
从表中取出第 n 条到第 m 条的记录:
Select TOP m-n+1 * FROM table Where (id NOT IN(Select TOP n-1 id FROM table))
Oracle:
select * from table where rownum<N
-- 我們想把最先進入公司的5個人找出來
SELECT * FROM emp WHERE ROWNUM <= 5 ORDER BY hiredate;
或
SELECT * FROM (SELECT * FROM emp ORDER BY hiredate)
WHERE ROWNUM <= 5;
-- 我們想把最先進入公司的6~10個人找出來!!!!!!!!!!!!!!
SELECT * FROM (SELECT * FROM emp ORDER BY hiredate)
WHERE ROWNUM <= 10
MINUS
SELECT * FROM (SELECT * FROM emp ORDER BY hiredate)
WHERE ROWNUM <= 5;

浙公网安备 33010602011771号