select * from
(
Select DISTINCT
DocManREPORT_View.DOCINPUTDATE,
DocManREPORT_View.REACTIVATEDATE,
DocManREPORT_View.TRACENO,
DocManREPORT_View.CLIENTNAME,
DocManREPORT_View.DOCUMENTID,DocManREPORT_View.BARCODEID,
DocManREPORT_View.INPUTMODE,
DocManREPORT_View.INPUTSOURCE,PI.start_time,
RANK() OVER (PARTITION BY process_instance_id
ORDER BY last_modified_date desc) rank,
PI.STATUS AS PROCESSSTATUS
FROM DocManREPORT_View
INNER JOIN PROCESS_INSTANCE PI ON
(pi.instance_id = DocManREPORT_View.process_instance_id)
)
where rank = 1;
質問する
73 次
2 に答える
0
DISTINCT句はパフォーマンスを台無しにする可能性があると思います。句ごとのパーティションに含めることでそれを取り除き、何が得られたかを確認することをお勧めします。
于 2012-09-10T06:21:13.097 に答える
0
可能であれば、使用してみてください
RANK() OVER (PARTITION BY process_instance_id
ORDER BY last_modified_date desc) rank,
ビューの内部では、ビューにはこのステップを実行するためのすべてのデータが既に含まれていると思います。
于 2012-09-10T06:42:33.260 に答える