控制台打印的SQL运行信息:
{pstm-100133} Executing Statement:    select t.*,org.organ_name,citizen.name,citizen.date_of_birth    from (        select * from ( select row_limit.*, rownum rownum_ from (     select * from(       select inorders.org_id,inorders.mpi_id,inorders.dept_admission_to,inorders.discharge_dept_name,inorders.master_doctor_name,       inorders.admission_date,inorders.discharge_date,inorders.in_days,inorders.diagnosis,inorders.in_fee,inorders.ehr_id       from t_log_in_orders inorders          where                     inorders.discharge_date >= ?        and     inorders.discharge_date <= ?                                        and inorders.in_fee is not null       order by inorders.in_fee desc) where rownum<=?             ) row_limit where rownum <= ?    ) where rownum_ >= ?         )t       left join t_organization org on t.org_id = org.organ_code       left join t_citizen_info citizen on citizen.mpi_id = t.mpi_id  
{pstm-100133} Parameters: [20120101, 20120902, 10, 10, 1]
{pstm-100133} Types: [java.lang.String, java.lang.String, java.lang.String, java.lang.String, java.lang.String]
{rset-100134} ResultSet
{rset-100134} Header: [ORG_ID, MPI_ID, DEPT_ADMISSION_TO, DISCHARGE_DEPT_NAME, MASTER_DOCTOR_NAME, ADMISSION_DATE, DISCHARGE_DATE, IN_DAYS, DIAGNOSIS, IN_FEE, EHR_ID, ROWNUM_, ORGAN_NAME, NAME, DATE_OF_BIRTH]
{rset-100134} Result: [690482894, 15681, 血液、肿瘤内科, 血液、肿瘤内科, 李丹, 20120227, 20120329, 32, 肺部感染, 106233, 24288814, 10, 第一人民医院, 曾集传, 19251214]
{rset-100134} Result: [690482894, 23083, 骨外科, 神经外科, 刘伟乐, 20120102, 20120207, 37, 肺部感染, 113280, 24225345, 8, 第一人民医院, 蔡晓青, 19840412]
{rset-100134} Result: [690482894, 27831, 急诊内科, 危重医学科, 叶自力, 20120131, 20120215, 16, 泌尿系感染, 317114.97, 24233413, 2, 第一人民医院, 刘华生, 19330220]
{rset-100134} Result: [690482894, 27831, 急诊内科, 危重医学科, 叶自力, 20120131, 20120215, 16, null, 317114.97, 24233413, 1, 第一人民医院, 刘华生, 19330220]
{rset-100134} Result: [690482894, 27209, 急诊内科, 神经外科, 余名华, 20120130, 20120214, 16, 无, 122871, 24232310, 7, 第一人民医院, 叶新健, 19760220]
{rset-100134} Result: [690482894, 29131, 肾病、风湿病科, 危重医学科, 车雁芳, 20120102, 20120217, 47, 肺部感染, 235345, 24235644, 3, 第一人民医院, 欧阳骝, 19271226]
{rset-100134} Result: [690482894, 43596, 神经外科, 神经外科, 谢乙团, 20120202, 20120310, 38, 泌尿道感染, 142203, 24261147, 5, 第一人民医院, 陈贵华, 19560816]
{rset-100134} Result: [690482894, 40882, 普外科, 普外科, 肖凌晖, 20120221, 20120306, 15, 无, 109664.6, 24256059, 9, 第一人民医院, 张月开, 19360306]
{rset-100134} Result: [690482894, 40885, 危重医学科, 综合内科, 陈海龙, 20120201, 20120306, 35, 无, 123344, 24256066, 6, 第一人民医院, 许富来, 19300106]
{rset-100134} Result: [690482894, 46436, 神经外科, 神经外科, 曾春生, 20120228, 20120314, 16, 无, 151928, 24266678, 4, 第一人民医院, 江秀琴, 19580629]

把参数替换问号组成SQL语句:
select t.*,org.organ_name,citizen.name,citizen.date_of_birth    from (        select * from ( select row_limit.*, rownum rownum_ from (     select * from(       select inorders.org_id,inorders.mpi_id,inorders.dept_admission_to,inorders.discharge_dept_name,inorders.master_doctor_name,       inorders.admission_date,inorders.discharge_date,inorders.in_days,inorders.diagnosis,inorders.in_fee,inorders.ehr_id       from t_log_in_orders inorders          where                     inorders.discharge_date >= '20120101'        and     inorders.discharge_date <= '20120902'                                        and inorders.in_fee is not null       order by inorders.in_fee desc) where rownum<='10'             ) row_limit where rownum <= '10'    ) where rownum_ >= '1'         )t       left join t_organization org on t.org_id = org.organ_code       left join t_citizen_info citizen on citizen.mpi_id = t.mpi_id
在plsql中查看执行结果:
690482894 27831 急诊内科 危重医学科 叶自力 20120131 20120215 16 317114.97 24233413 1 第一人民医院 刘华生 19330220
690482894 27831 急诊内科 危重医学科 叶自力 20120131 20120215 16 泌尿系感染 317114.97 24233413 2 第一人民医院 刘华生 19330220
690482894 29131 肾病、风湿病科 危重医学科 车雁芳 20120102 20120217 47 肺部感染 235345.00 24235644 3 第一人民医院 欧阳骝 19271226
690482894 46436 神经外科 神经外科 曾春生 20120228 20120314 16 无 151928.00 24266678 4 第一人民医院 江秀琴 19580629
690482894 43596 神经外科 神经外科 谢乙团 20120202 20120310 38 泌尿道感染 142203.00 24261147 5 第一人民医院 陈贵华 19560816
690482894 40885 危重医学科 综合内科 陈海龙 20120201 20120306 35 无 123344.00 24256066 6 第一人民医院 许富来 19300106
690482894 27209 急诊内科 神经外科 余名华 20120130 20120214 16 无 122871.00 24232310 7 第一人民医院 叶新健 19760220
690482894 23083 骨外科 神经外科 刘伟乐 20120102 20120207 37 肺部感染 113280.00 24225345 8 第一人民医院 蔡晓青 19840412
690482894 40882 普外科 普外科 肖凌晖 20120221 20120306 15 无 109664.60 24256059 9 第一人民医院 张月开 19360306
690482894 15681 血液、肿瘤内科 血液、肿瘤内科 李丹 20120227 20120329 32 肺部感染 106233.00 24288814 10 第一人民医院 曾集传 19251214

很显然这两个结果集的顺序不一样,排在第一位的
在控制台打印的是:
[690482894, 15681, 血液、肿瘤内科, 血液、肿瘤内科, 李丹, 20120227, 20120329, 32, 肺部感染, 106233, 24288814, 10, 第一人民医院, 曾集传, 19251214]
而在PLSQL中输出运行,排在第一位的是:
690482894 27831 急诊内科 危重医学科 叶自力 20120131 20120215 16 317114.97 24233413 1 第一人民医院 刘华生 19330220
实在是让我很费解,请大虾帮忙分析分析,小弟不胜感激!