假设我有一个week_nbr和cust_id的表。
假设我想要每周抽取500名客户的样本。
愚蠢的方法是每周都这样做:
select cust_id
from week_cust
sample randomized allocation 500
where week_nbr=1
聪明的方式是什么?即,有没有办法让以下概念有效?
select week_nbr
,random sample of 500 cust_id in this week
from week_cust
这是在Teradata 12上。
最好,并提前感谢。
答案 0 :(得分:0)
我不认为使用sample
子句可以做到这一点。尽管如此,你应该可以达到相同的结果:
select week_nbr, cust_id
from week_cust
qualify row_number() over (partition by week_nbr order by random(1, 10000)) <= 500