首頁  >  問答  >  主體

取得SQL中引用鍵的所有第1條數據

我有兩個名為「使用者」和「付款」的表格。在 Payment 中,有一個使用者表的外鍵。這是付款表的記錄。

從付款中選擇 id,User_id;

#
id User_id
1 1
2 1
3 2
4 3
5 2

但我的預期輸出是這樣的。

id User_id
1 1
3 2
4 3

我只想要 SQL 中每個 User_id 的第一個資料。

P粉041856955P粉041856955404 天前456

全部回覆(2)我來回復

  • P粉510127741

    P粉5101277412023-09-12 18:21:17

    您可以在 User_id 欄位上使用 GROUP BY 子句。

    回覆
    0
  • P粉262073176

    P粉2620731762023-09-12 14:14:03

    試試這個...

    SELECT p1.id, p1.user_id
    FROM payment p1
    WHERE p1.id IN (SELECT MIN(p2.id) FROM payment p2 GROUP BY p2.user_id)

    假設,「第一個」是指該使用者付款表中id 的最小值,並且您還需要付款表中的更多詳細資訊或對其執行其他操作...

    如果您只想要 MIN 付款 ID,那麼只需這樣即可:

    SELECT MIN(id), user_id FROM payment GROUP BY user_id

    回覆
    0
  • 取消回覆