Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- SELECT *
- FROM hoge
- -- hoge_dateが、2016-10-12から2016-10-13までのデータに絞り込み
- -- WHERE hoge_date BETWEEN '2016-10-12' AND '2016-10-13'
- -- サンプリング: 乱数を生成し、0.5以下のデータ行のみ絞り込み
- -- WHERE RANDOM() <= 0.5
- -- WITH句によって、一時テーブルreserve_tb_randomを生成
- WITH hoge_random AS(
- SELECT
- *,
- -- customer_idに対して一意の値となる乱数の生成
- -- 生成した乱数をcustomer_idごとにまとめて、1番目の値を取り出す
- FIRST_VALUE(RANDOM()) OVER (PARTITION BY customer_id) AS random_num
- FROM hoge
- )
- -- *ですべての列を抽出しているが、random_numを外したい場合は列を指定する必要あり
- SELECT *
- FROM hoge_random
- -- 50%サンプリング、customer_idごとに設定された乱数が0.5以下の場合に抽出
- WHERE random_num <= 0.5
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement