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

我有两个名为“用户”和“付款”的表。在 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
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板