我試圖選擇user_from
存在的行作爲user_to
在以後創建的其他行中。爲每個組合選擇第一行
此查詢爲我提供了行。
SELECT A
FROM db.table A
LEFT JOIN db.table B
ON A.user_to = B.user_from
AND A.user_from = B.user_to
AND A.createdAt < B.createdAt
WHERE B.user_to IS NOT NULL AND B.user_from IS NOT NULL;
但是,我想得到每個組合user_to/user_from
的第一行。
E.g.如果有喜歡的一些行:
user_to = 1, user_from = 2
user_to = 2, user_from = 1
user_to = 2, user_from = 1
user_to = 1, user_from = 2
我想只是第一個創建(如createdAt
定義)。
我試過使用GROUP BY user_from
,但是這排除了每個user_from
的所有其他組合。
請使用'DISTINCT'來選擇列值 –