这是我表的当前场景,我想根据用户获取最新的交易表, 用户可以在(sender_user或receiver_user)的任何列中
注意: 如果(发送者用户和接收者用户)列中都有用户可用,那么我们可以忽略接收者用户
transaction_date Sender_user Receiver_user Balance txno
18/3/2019 9:46 118 null 100 1
18/3/2019 10:46 320 118 200 2
18/3/2019 11:46 1112 null 121 3
19/3/2019 6:46 316 40 4
19/3/2019 7:46 316 219 60 5
19/3/2019 9:46 219 112 51 6
19/3/2019 10:46 122 null 30 7
19/3/2019 11:46 122 null 420 8
请帮助我解决这个问题。
我的排除结果是
transaction_date User Amount txno
18/3/2019 9:46 118 100 1
18/3/2019 10:46 320 200 2
18/3/2019 11:46 1112 121 3
19/3/2019 7:46 316 60 5
19/3/2019 9:46 219 51 6
19/3/2019 11:46 122 420 8
这是我到目前为止尝试过的。
SELECT t.transaction_date, t.sender_user, t.receiver_user, t.trans_group_id,
t.balance, t.txid
FROM transactions t
INNER JOIN(
SELECT t1.sender_user, t1.receiver_user, MAX(t1.transaction_date) AS
'transaction_date'
FROM transactions t1
GROUP BY t1.sender_user) max_tranc
ON (t.sender_user= max_tranc.sender_user)
AND t.transaction_date= max_tranc.transaction_date