Ibm midrange 在3列上选择distinct,但返回所有列

Ibm midrange 在3列上选择distinct,但返回所有列,ibm-midrange,db2-400,Ibm Midrange,Db2 400,以下代码重复,因为trans代码相同 我运行此操作是为了删除这样的重复,但它不会执行以下操作: SELECT DISTINCT * FROM rklib.clspaytpa ORDER BY otord#, otusrn, ottrnc 因此,在下面的例子中,我们只需要1个“RRF”行和CWA行 OTORD# OTTRND OTTRT OTUSRN OTTRNC 05582907 20150518 173805 MMOLINA RRF 055829

以下代码重复,因为trans代码相同

我运行此操作是为了删除这样的重复,但它不会执行以下操作:

SELECT DISTINCT * FROM rklib.clspaytpa
ORDER BY otord#, otusrn, ottrnc 
因此,在下面的例子中,我们只需要1个“RRF”行和CWA行

OTORD#  OTTRND  OTTRT   OTUSRN            OTTRNC
05582907    20150518    173805  MMOLINA RRF
05582907    20150518    173810  MMOLINA RRF
05582907    20150519    181515  MMOLINA CWA

这将保持OTRD#、ottrnd、otusrn的独立性,并折叠ottrt、ottrnc:

SELECT otord#, ottrnd, otusrn, MIN(ottrt) AS ottrt, MIN(ottrnc) AS ottrnc
FROM rklib.clspaytpa
GROUP BY otord#, ottrnd, otusrn

你能澄清并举例说明你想要什么和不想要什么吗?我不清楚你想得到什么。你具体对哪一行RRF感兴趣?OTUSRN值不同,因此这两行实际上并不不同。只有其中一行,它可能是第一行。那么哪些字段需要不同,哪些可以折叠?不同的是otord#,ottrnd,OTUSRN(我们希望包括其他字段,但不考虑不同的字段)这很好,只有一件事,当我为ottrnd和ottrt运行此命令时,列名称不带字符,它给出了列名称0004和0005。