如何在oracle中生成一个随机字符

How to generate a random char in oracle

我的 table 中有一列,我可以根据用户的性别(男性或女性)在其中插入 M 或 F。

我需要随机生成这一列。

此列类型为 VARCHAR2(1)。

我想我应该使用类似的东西:

TRUNC(dbms_random.value(X,X))

但是我不知道怎么办。

因为 dbms_random.value returns 一个值 >= 0 且 < 1,我只是使用这样的东西假设你想要获得 M 或 F 的概率相等。如果你想要要产生偏斜分布,请将 0.5 值调整为您想要的值

case when dbms_random.value < 0.5
     then 'M'
     else 'F'
 end