源码:
select * from B_MOD_WARNING A
LEFT JOIN B_MOD_WARNING_PERSON B
ON A.MOD_WARNING_ID = B.MOD_WARNING_ID
and B.SYS_USR_ID IN 257055
INNER JOIN (SELECT T.VLD_SITE_ID,
T.VLD_ENTITY_TYPE_ID
FROM VLD_SITE T
WHERE T.ORG_STATUS ='A'
CONNECT BY PRIOR T.VLD_SITE_ID = T.VLD_PARENT_SITE_ID
START WITH (T.VLD_SITE_ID = (SELECT VLD_SITE_ID FROM SYS_USR WHERE USR_LOGIN='admin')) ) V
ON A.VLD_SITE_ID=V.VLD_SITE_ID
WHERE A.MAIN_TABLE = 'S_EQUIPMENT_MAIN_TB'
AND B.MOD_WARNING_ID IS NULL
当我执行这条SQL语句的时候,显示结果如下:

但是现在我必须通过SQL语句去获取257055这个值,于是我把and B.SYS_USR_ID IN 257055改为了 and B.SYS_USR_ID IN (SELECT SYS_USR_ID FROM SYS_USR WHERE USR_LOGIN='admin') 但是这样执行之后结果集的顺序就变了,如图:

------解决思路----------------------
结果集显示的顺序默认是数据从数据库中读取的顺序,这个顺序是没办法直接获得的