首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

查询以显示每个用户的前3条记录,其中用户至少提交了3条记录?

查询以显示每个用户的前3条记录,其中用户至少提交了3条记录,可以使用以下SQL语句实现:

代码语言:txt
复制
SELECT *
FROM (
  SELECT *,
    ROW_NUMBER() OVER (PARTITION BY 用户ID ORDER BY 提交时间 DESC) AS rn
  FROM 表名
) AS t
WHERE t.rn <= 3
GROUP BY 用户ID
HAVING COUNT(*) >= 3;

解析:

  • 首先,使用子查询将原始表中的数据按用户ID分组,并按提交时间降序排列,并添加一个行号rn。
  • 然后,外层查询从子查询中选取行号rn小于等于3的记录,并按用户ID进行分组。
  • 最后,通过HAVING子句过滤出至少有3条记录的用户。

这样可以查询到每个用户提交的前3条记录,并且用户至少提交了3条记录。

注意:上述SQL语句是通用的,不涉及特定的云计算平台或产品。在具体应用中,根据实际情况选择适合的数据库和相应的查询语法。

参考链接:

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

没有搜到相关的视频

领券