Oracle10g Oracle查询不同记录问题

Oracle10g Oracle查询不同记录问题,oracle10g,Oracle10g,我有一张有以下记录的表格 seqNo desc typeID statusID GroupSeqNo 1 test 20 30 16 2 test1 21 42 16 3 test2 20 43 17 4 test3 20 30 17 5 test4 21

我有一张有以下记录的表格

seqNo   desc  typeID   statusID    GroupSeqNo
1       test    20        30          16
2       test1   21        42          16
3       test2   20        43          17   
4       test3   20        30          17
5       test4   21        42          18
6       test5   20        43          18
我将此表与其他两个表合并,以获得typedescription和Statusdescription

我的问题是如何只显示每个组的一条记录seqno?如果您查看上述样本记录,则有3条来自GroupSeqNo 16的记录,2条用于17,2条用于18

以下是我正在使用的查询:

SELECT DISTINCT SS.GROUPSEQNO,SS.SEQNO,SS.DESC,T.DESC,S.DESC 
FROM STATS SS, DDTYPES T, DDSTATUSES S 
WHERE SS.TYPE_ID=T.TYPE_ID AND SS.STATUS_ID=S.STATUS_ID

加入一个子查询,该查询使用
GROUP BY
STATS
表进行分组,并根据需要选择
MIN(seqNo)
MAX(seqNo)

SELECT SS.GROUPSEQNO, SS.SEQNO, SS.DESC, T.DESC, S.DESC
FROM STATS SS
  INNER JOIN DDTYPES T ON  SS.TYPE_ID = T.TYPE_ID
  INNER JOIN DDSTATUSES S SS.STATUS_ID = S.STATUS_ID
  INNER JOIN (
    SELECT MIN(seqNo) MinID
    FROM STATS
    GROUP BY GroupSeqNo
  ) g ON SS.seqNo = g.MinID

加入一个子查询,该查询使用
GROUP BY
STATS
表进行分组,并根据需要选择
MIN(seqNo)
MAX(seqNo)

SELECT SS.GROUPSEQNO, SS.SEQNO, SS.DESC, T.DESC, S.DESC
FROM STATS SS
  INNER JOIN DDTYPES T ON  SS.TYPE_ID = T.TYPE_ID
  INNER JOIN DDSTATUSES S SS.STATUS_ID = S.STATUS_ID
  INNER JOIN (
    SELECT MIN(seqNo) MinID
    FROM STATS
    GROUP BY GroupSeqNo
  ) g ON SS.seqNo = g.MinID

从STATS SS、DDTYPES T、ddstatus S中选择DISTINCT SS.GROUPSEQNO、SS.DESC、T.DESC、S.DESC,其中SS.TYPE_ID=T.TYPE_ID和SS.STATUS_ID=S.STATUS_ID选择DISTINCT SS.GROUPSEQNO、SS.DESC、T.DESC、S.DESC,其中SS.TYPE_ID=T.TYPE_ID=T.TYPE_ID和SS.STATUS_ID=S.STATUS_ID