我必须在SQL中对给定的结果使用80/20.有一些可用的资源,但我仍然不能离题


select o.user_id, liftime_orders from
((select distinct user_id from app_open
WHERE DATE (TIMESTAMP 'epoch' + TIME*INTERVAL '0.001 second') BETWEEN CURRENT_DATE -30 AND CURRENT_DATE) a
JOIN
(select COUNT (distinct order_num) AS liftime_orders,user_id
from order_master_bi
group by 2
having  liftime_orders >=1
) o
ON a.user_id=o.user_id)

数据库是amazon红移

[他的查询结果]]:https://i.stack.imgur.com/pMThz.png

我从stackoverflow本身的前一个答案中得到了答案。请参阅此链接:根据百分比随机划分表格数据

SELECT用户,MAX(rn(OVER((AS MAX_rnk,案例当max_rnk*0.8<=rn THEN"测试"ELSE"控制"END AS标志FROM(选择o.user_id作为用户,ROW_NUMBER((OVER(ORDER BY random(((AS rnFROM(选择DISTINCT user_idFROM app_open其中当前日期-30和当前日期之间的日期(时间戳"epoch"+时间*间隔"0.001秒"(aJOIN(SELECT COUNT(DISTINCT order_num(AS liftime_orders,user_id自order_master_bi按2分组提升时间订单>=1( o打开a.user_id=o.user_id(

最新更新