yangwei0915 发表于 2013-1-30 01:21:22

各种不同数据库查询控制行数的sql语句

SqlServer   
  
select top 10 * from tablename;   
  
Informix   
  
select first 10 * from tablename;   
  
Oralce   
  
select * from tablename where rownum<=10;   
  
MySql   
  
SQL1 select * from tableName limit 10  
 
SQL2 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是偏移量
 
SQLite    与MySQL相同
  
select * from tableName limit 10  
 
页: [1]
查看完整版本: 各种不同数据库查询控制行数的sql语句