作者:弱柳纤纤_ | 来源:互联网 | 2023-06-27 14:20
各种不同数据库查询前几行/后几行的sql语句
SqlServer
select top 10 * from tablename;
Informix
select first 10 * from tablename;
Oralce
select * from tablename where rownum<=10;
MySql
select * from tableName limit 10
Sqlite3查询指定行数数据
Sqlite中提供的方法和Mysql的一样,也是通过关键字limit限制。
SQL1
Sql代码
select t.user_id,random() as Random from udb_user t limit 10;
select t.user_id,random() as Random from udb_user t limit 10;
SQL2
Sql代码
select t.user_id,random() as Random from udb_user t limit 10,15;
select t.user_id,random() as Random from udb_user t limit 10,15;
LIMIT子句限定行数的最大值。负的LIMIT表示无上限。后跟可选的OFFSET说明跳过结果集中的前多少行。在一个复合查询中,LIMIT子句只允许出现在最终SELECT语句中。限定对于所有的查询均适用,而不仅仅是添加了LIMIT子句的那一行。注意OFFSET关键字用于LIMIT子句中,则限制值是第一个数字,而偏移量(offset)是第二个数字。若用逗号替代OFFSET关键字,则偏移量是第一个数字而限制值是第二个数字。这是为了加强对遗留的SQL数据库的兼容而有意造成的矛盾。
SQL1查询当前表前10条记录,SQL2查询当前表前10条之后的15条记录,SQL2中的10是偏移量。