【问题标题】:SQL To retrieve 50 random user with their all transaction recordsSQL 检索 50 个随机用户及其所有交易记录
【发布时间】:2023-03-16 02:41:01
【问题描述】:

我想提取数据来分析用户行为交易。我只需要为每个日期随机选择 50 个用户及其交易记录。有谁知道我该怎么做?

提前致谢!

【问题讨论】:

  • 能否请您展示相关表格的结构

标签: sql presto trino


【解决方案1】:

我认为你可以在 sql server 中这样尝试

SELECT TOP 50 column FROM table ORDER BY NEWID()

有关更多信息,您可以访问此link

【讨论】:

    【解决方案2】:

    假设每个用户有一行,那么您可以使用:

    select t.*
    from t
    order by random()
    limit 50;
    

    如果每个用户有多个行并且想要其中 50 个的完整数据,那么您可以使用join

    select t.*
    from t join
         (select distinct user_id
          from t
          order by random()
          limit 50
         ) u50
         on t.user_id = u50.user_id;
    

    【讨论】:

      猜你喜欢
      • 2013-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-02
      • 1970-01-01
      • 2012-03-08
      • 2012-07-03
      相关资源
      最近更新 更多