MW211 EXIT

devlog
PostgreSQL/乱数に重みをつける
2013年02月18日
ただランダムに値を取得するのではなく、頻度を分けたい場合がある。
「1」の目を多く出るようにしたい場合とかである(コンプガチャか!?)

こういう場合は、配列と組み合わせてこんな感じにできるであろう。
┌──────────────────────────────────────┐
│SELECT (ARRAY[1,1,2,3,4,5,6])[trunc(random() * 7) + 1];               →1~6│
└──────────────────────────────────────┘
これだと、「1」(はずれ?)の目の確率が他の二倍となる。
分類:PostgreSQL