日期:2014-05-18  浏览次数:20435 次

一条SQL语句!
表H_ENTRY_WORKFLOW   字段   ENTRY_ID,STEP_ID  
记录如下
select   ENTRY_ID,STEP_ID   from   H_ENTRY_WORKFLOW   order   by     ENTRY_ID,STEP_ID   asc


ENTRY_ID                         STEP_ID
-------------------------------------
090120061016209152     00000000
090120061016209152     00000000
090120061016209152     10000000
090120061016209152     10000000
090120061016209152     20000000
090120061016209152     30000000
090120061016209152     30000000
090120061016209152     40000000
090120061016209152     40000000
090120061016209152     70000000
090120061016209152     80000000(*)

090120061016209155     00000000
090120061016209155     10000000
090120061016209155     20000000
090120061016209155     30000000
090120061016209155     40000000(*)

我要实现的是如何得到
090120061016209152     80000000(*)
090120061016209155     40000000(*)
这俩条数据!!!




------解决方案--------------------
select ENTRY_ID, max(STEP_ID)
from H_ENTRY_WORKFLOW
group by ENTRY_ID
order by ENTRY_ID,STEP_ID asc
------解决方案--------------------
select * from H_ENTRY_WORKFLOW t
where not exists(select 1 from H_ENTRY_WORKFLOW where ENTRY_ID = t.ENTRY_ID and STEP_ID > t.STEP_ID)
------解决方案--------------------
select * from H_ENTRY_WORKFLOW t
where t.STEP_ID(select max(t.STEP_ID) from H_ENTRY_WORKFLOW where ENTRY_ID = t.ENTRY_ID)
------解决方案--------------------
select ENTRY_ID,max(STEP_ID)
from H_ENTRY_WORKFLOW
group by ENTRY_ID
order by ENTRY_ID,STEP_ID asc