问题描述
我想提取数据来分析用户行为交易。我只需要为每个日期随机选择 50 个用户及其交易记录。有谁知道我该怎么做?
提前致谢!
解决方法
我认为你可以在 sql server 中这样尝试
SELECT TOP 50 column FROM table ORDER BY NEWID()
有关更多信息,您可以访问此link
,假设每个用户只有一行,那么您可以使用:
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;