各数据库查询前N条记录的SQL语句

  sql在不同数据库查询前几条数据

  1. ORACLE
  SELECT * FROM TABLE_NAME WHERE ROWNUM <= N; 
  HQL: from table_name t order by t.create_time desc where rownum<=n;


  2. postgres查询前几条记录SQL 
  SELECT * FROM TABLE_NAME LIMIT N;
  3. DB2
  SELECT * ROW_NUMBER() OVER(ORDER BY COL1 DESC) AS ROWNUM WHERE ROWNUM <= N; 
  或者
  SELECT COLUMN FROM TABLE FETCH FIRST N ROWS ONLY;


  4. SQL SERVER
  SELECT TOP N * FROM TABLE_NAME;


  5. SYBASE
  SET ROWCOUNT N
  GO
  SELECT * FROM TABLE_NAME;


  6. MYSQL
  SELECT * FROM TABLE1 LIMIT N
  hibernate查询记录的前10条记录
  就像mysql的SQL语句的"select * from table limit 10" hql 不支持limit
  query.setFirstResult(0);//从第0条开始取
  query.setMaxResults(10);//取十条记录


  7. FOXPRO
  SELECT * TOP N FROM TABLE_NAME ORDER BY COLUMN;


  8.INFORMIX 
  SELECT FIRST N * FROM TABLE_NAME;