如何使用sql查询设置结果集行数

时间:2014-06-06 07:48:52

标签: mysql sql

我想设置每个查询返回的行数说5.如何在sql查询中设置它。 任何人都可以帮助我

4 个答案:

答案 0 :(得分:1)

高度依赖于您正在使用的RDBMS。

对于Oracle

 SELECT * FROM the_table WHERE ROWNUM < 6

(因为12c也有another option。)

对于Postgresql

 SELECT * FROM the_table LIMIT 5

答案 1 :(得分:1)

根据MySQL manual,您可以通过在查询中添加LIMIT语句来执行此操作:

SELECT * FROM tbl_name
LIMIT offset, row_numbers

SELECT * FROM tbl_name
LIMIT row_numbers OFFSET offset

offset选项在分页时非常有用。

答案 2 :(得分:0)

SELECT TOP 5 *
FROM dbo.MyTable

答案 3 :(得分:0)

有人建议你可以使用:

select top X from table_name

其中X是您想要的行数

或者您可以使用row_number

With cte AS 
( SELECT *, 
ROW_NUMBER() OVER (order by table_column) as RowNumber  
FROM table_name) 
select * 
from cte
Where RowNumber <= 5

甚至:

With cte AS 
( SELECT *, 
ROW_NUMBER() OVER (order by table_column) as RowNumber  
FROM table_name) 
select * 
from cte
Where RowNumber between 5 and 10