如何通过某种支付方式获取所有数据?
How to get all data with a certain mode of payment?
我想获取所有以 'Card' 作为付款方式 (MOP
) 的行,包括拆分 MOP。说这是数据:
Receipt No.
MOP
Amount
0001
Cash
100
0001
GC
70
0002
Card
500
0002
Cash
50
0003
E-Wallet
300
0004
Card
250
0005
GC
150
0006
Card
200
0006
E-Wallet
100
0007
Card
300
结果应该是这样的:
Receipt No.
MOP
Amount
0002
Card
500
0002
Cash
50
0004
Card
250
0006
Card
200
0006
E-Wallet
100
0007
Card
300
如有任何帮助,我们将不胜感激
脑海中浮现出一种直截了当的逻辑:
SELECT t1.*
FROM yourTable t1
WHERE EXISTS (SELECT 1 FROM yourTable t2
WHERE t2.ReceiptNo = t1.ReceiptNo AND t2.MOP = 'Card');
你可以像这样使用简单的 where close
select * from youtable where MOP = 'Card'
我想获取所有以 'Card' 作为付款方式 (MOP
) 的行,包括拆分 MOP。说这是数据:
Receipt No. | MOP | Amount |
---|---|---|
0001 | Cash | 100 |
0001 | GC | 70 |
0002 | Card | 500 |
0002 | Cash | 50 |
0003 | E-Wallet | 300 |
0004 | Card | 250 |
0005 | GC | 150 |
0006 | Card | 200 |
0006 | E-Wallet | 100 |
0007 | Card | 300 |
结果应该是这样的:
Receipt No. | MOP | Amount |
---|---|---|
0002 | Card | 500 |
0002 | Cash | 50 |
0004 | Card | 250 |
0006 | Card | 200 |
0006 | E-Wallet | 100 |
0007 | Card | 300 |
如有任何帮助,我们将不胜感激
脑海中浮现出一种直截了当的逻辑:
SELECT t1.*
FROM yourTable t1
WHERE EXISTS (SELECT 1 FROM yourTable t2
WHERE t2.ReceiptNo = t1.ReceiptNo AND t2.MOP = 'Card');
你可以像这样使用简单的 where close
select * from youtable where MOP = 'Card'