3つのクエリがあり、これらのクエリのエントリで構成される結果行をランダムに並べて結合したいと考えています。
結果を結合したくはありませんが、多かれ少なかれランダムな方法で結果を結合します(元の分布を維持することも、すべてに統合することもできます)。
私は次のことを試しました:
select *
from
(
SELECT street, number
FROM Addresses
WHERE valid = '1'
order by Dbms_Random.Value
) q1 ,
(
select prename
from person
order by Dbms_Random.Value
) q2 ,
(
select surname
from person
order by Dbms_Random.Value
) q3
しかし、私の結果セットはまったくランダムではないように見えます。
Main street, 1, Andre, Smith
Main street, 1, Andre, Warnes
Main street, 1, Andre, Jackson
Main street, 1, Andre, Macallister
クエリからを削除しORDER BY
てデカルト積の結果に適用することは、テーブルが大きく、特にデカルト積であるため、非常に非効率的です。