1.oracle:
     SELECT *  FROM ( SELECT ROWNUM SN, t.*  FROM App_event  t where  process_flag=0 ORDER BY t.id ) WHERE SN>0 AND SN<=20;
 
 2.sqlserver:
     SELECT top 20 * FROM app_event where Process_flag = 0 ORDER BY Id
 
 3.db2:
     SELECT * FROM ( select app_event.*  ,rownumber() OVER( order by app_event.id )AS ROW_NEXT FROM app_event where  app_event.Process_flag = 0)AS PRODUCT_TEMP WHERE ROW_NEXT BETWEEN 0 and 20
 
 4.mysql:
     select * from app_event order by id limit 0,20
自己程序中用到的一点小东西,跟大家分享下。 

解决方案 »

  1.   

    唉,现在都有自动转换工具了楼主还这样麻烦啊。
    informix的first怎么你没讲?
    SELECT first 20 * FROM app_event where Process_flag = 0 ORDER BY Id 
      

  2.   

    对于第3条,似乎是SQL高版本的标准SQL,
    在SQL2005和Oracle9开始都得到支持.
      

  3.   

    MTK数据库转换工具可以搞定数据库迁移问题。
      

  4.   

    是啊!多熟悉一个SQL语句不错的
      

  5.   

      study !!! studying!!!