问题描述
在金额表中我需要检查(1-1)匹配然后(1-many)匹配
金额:
Amtsign Id Amt
+ ve。 1 100
+ ve。 1 100
-ve。 1 -100
+ ve。 1 100
-ve。 1 -200
-ve。 2 -200
-ve。 2. -200
+ ve。 2 400
结果应显示为:
Amtsign Id Amt Amtsign Id Amt
+ ve。 1 100. -ve。 1 -100(1-1)
+ ve。 1 100. -ve。 1 -100。 (1米)
+ ve。 1 100. -ve。 1 -100(1-m)
+ ve。 2 200. -ve。 2 -200(1-m)
+ ve。 2 200. -ve。 2 -200(1-m)
我尝试过:
(选择 * 从金额组 按 id,amtsign amtsign = ' + ve')
内部 join
(选择 * 从金额 group 按 id,签名 amtsign = ' - ve')b
On a.Amt = b.Amt
我无法在on function中聚合值,让我知道如何获得上述结果
我认为它必须是:
(选择 * 来自金额)a
内部 加入金额b
开启 a.Amt = b.Amt
组 按 id, amtsign amtsign = ' + ve' OR amtsign = ' - ve'
或者:
(选择 * 来自金额组 按 id,amtsign 有 amtsign = ' + ve')a
UNION
(选择 * 从金额 group 按 id,签名 amtsign = ' - ve')b
In the amount table I need to check for (1-1) match and then the (1-many) match
Amount :
Amtsign Id Amt
+ve. 1 100
+ve. 1 100
-ve. 1 -100
+ve. 1 100
-ve. 1 -200
-ve. 2 -200
-ve. 2. -200
+ve. 2 400
Result should be displayed as :
Amtsign Id Amt Amtsign Id Amt
+ve. 1 100. -ve. 1 -100 ( 1-1 )
+ve. 1 100. -ve. 1 -100. ( 1-m)
+ve. 1 100. -ve. 1 -100 (1-m)
+ve. 2 200. -ve. 2 -200 (1-m)
+ve. 2 200. -ve. 2 -200 (1-m)
What I have tried:
(Select * from amount group by id,amtsign having amtsign ='+ve ' ) a Inner join (Select * from amount group by id,sign having amtsign ='-ve' ) b On a.Amt = b.Amt
I can't Aggregate the values in " on function ", let me know how to get above result
(Select * from amount) a Inner join amount b On a.Amt = b.Amt group by id,amtsign having amtsign ='+ve ' OR amtsign ='-ve'
Or:
(Select * from amount group by id,amtsign having amtsign ='+ve ' ) a UNION (Select * from amount group by id,sign having amtsign ='-ve' ) b
这篇关于在此表中首先我需要检查(1-1match)然后(1-many)然后显示结果的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!