我有一个表文档(id,name,id_expedient,creation_date,modify_date)。一个权宜之计可以有几个文件。 我有一个文件的ID,我想找到一个权宜之计,其最后一次修改(或创建)文件是我的Oracle SQL按照最新修改的行排序的SQL分组字段
选择例如
id name id_expedient creation_date modify_date
----------------------------------------------------------------------
1 doc Monday exp A 2/11/2015
2 doc Tuesday exp B 2/10/2015
3 doc Friday exp C 2/09/2015
4 doc Thursday exp C 2/01/2015 2/08/2015
如果我搜索文档ID之一:
1 the result must be Exp A
2 the result must be Exp B
3 the result must be Exp C
4 the result must be void, because doc Thursday is not the lastest modified document of Exp C (that would be doc 3)
我想这样做的子查询,但我不能获得有利的
SELECT id_exp
from TB_DOCUMENT doc1
where doc1.doc_id IN
(select TOP 1 DOC2.doc_id FROM
(SELECT DOC2.doc_id, NVL(MODIFY_DATE,CREATION_DATE) AS DateC
FROM TB_DOCUMENT DOC2
WHERE DOC2.id_exp = doc1.id_exp)
ORDER by DateC DESC)
的最新的修改后的文档3210
任何想法?
谢谢
如果您使用的是Oracle,你为什么有SQL Server语法在查询? – 2015-02-11 13:06:29
这只是一个例子。甲骨文是我必须用来解决这个问题。 – 2015-02-11 13:13:07
我想你也应该更好地阐明你的期望。 4不会返回任何内容,因为exp C的创建日期更近,ID 3? – mucio 2015-02-11 13:22:55