oracel 的 ROWNUM 使用

網上百度了一下都說 若是 排序 是按照主鍵來排序是 先排序,而後 執行 rownum 的。sql

測試了一下 ,好比:測試

SELECT a.id_, a.crm_ou_user_id_, a.hr_eff_pfmce_planeecpt_id_, a.biz_status_, a.remark_, a.content_, a.status_, a.create_time_, a.modify_time_, a.creator_, a.modifier_
        FROM hr_eff_cprjt_record a
         WHERE     a.status_!='1'  and a.hr_eff_pfmce_planeecpt_id_='110003208000028' and a.biz_status_='3' 
         AND  ROWNUM<=1 
         ORDER BY  ID_ DESC排序

結果並無 是 id排序後取得 第一個結果的。rem

全部使用下面的方式來獲取纔是對的。百度

SELECT * FROM  (
        SELECT a.id_, a.crm_ou_user_id_, a.hr_eff_pfmce_planeecpt_id_, a.biz_status_, a.remark_, a.content_, a.status_, a.create_time_, a.modify_time_, a.creator_, a.modifier_
        FROM hr_eff_cprjt_record a
         WHERE     a.status_!='1'  and a.hr_eff_pfmce_planeecpt_id_='110003208000028' and a.biz_status_='3' 
         AND  ROWNUM<=1 
         ORDER BY  ID_ DESC )  WHERE  rownum<=1程序

固然若是數量不大的話。使用sql 添加所有查出來。想要那條數據,本身就在代碼程序裏面獲取便可。im

相關文章
相關標籤/搜索