Oracle查询不同记录问题
我有一个包含以下记录的表,
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
我将该表与其他几个表连接起来以获取类型描述和状态描述。
我的问题是如何只显示每个 GroupSeqNo 中的一条记录?如果您查看上面的示例记录,您会发现 GroupSeqNo 16 中有 3 条记录,其中 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
I have a table with the following records
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
I am joining this table with couple of other tables to get the typedescription and Statusdescription.
My question is how can I display just one record from each GroupSeqNo? If you look at the above sample records there are 3 records from GroupSeqNo 16, 2 for 17 and 2 for 18.
Below is the query I am using:
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
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
加入使用
GROUP BY
对STATS
表进行分组的子查询,并选择MIN(seqNo)
或MAX(seqNo)
代码>取决于你想要什么。Join a sub query that groups the
STATS
table usingGROUP BY
and selects theMIN(seqNo)
orMAX(seqNo)
depending on what you want.