使用SQL SERVER,其他数据库的表达可能略有不同
情况一:
选取前50条记录
SELECT TOP 50 * FROM table_name
选取table中某些列的前50条
SELECT TOP 50 column_name(s) FROM table_name
情况二:
选取第50行
方法1
SELECT no=Identity(int,1,1),* INTO temptable FROM table_name
SELECT * FROM temptable WHERE no=15
DROP TABLE temptable
利用identity函数生成记录序号,和原表数据保存到临时表temptable中;
用完删除临时表temptable。
方法2
SELECT TOP 1 * FROM (SELECT TOP 50 * FROM table_name ORDER BY colnum_name DESC) AS f
方法3
SELECT TOP 1 * FROM table_name
WHERE column_name NOT IN (SELECT TOP 49 column_name FROM table_name)
情况3
选择50到99行数据
SELECT no=Identity(int,1,1),* INTO temptable FROM table_name
SELECT * FROM temptable WHERE no>=50 AND no<100
DROP TABLE temptable
情况4
选择前50%数据
SELECT TOP 50 PERCENT * FROM table_name
参考:
[1] https://bbs.csdn.net/topics/340019695
[2] http://www.runoob.com/sql/sql-top.html
[3] http://www.w3school.com.cn/sql/sql_top.asp