获取SQL中引用键的所有第1条数据
P粉041856955
P粉041856955 2023-09-11 21:36:51
0
2
411

我有两个名为“用户”和“付款”的表。在 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粉041856955
P粉041856955

全部回复 (2)
P粉510127741

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

    P粉262073176

    试试这个...

    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
      最新下载
      更多>
      网站特效
      网站源码
      网站素材
      前端模板
      关于我们 免责声明 Sitemap
      PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!