0

行が挿入されると、一致する基準を持つすべての行に1と行数の間のランダムな整数が与えられ、選択時に行をランダム化する関数またはトリガーが必要です。

たとえば、データがある場合

Col1 Col2 順番
  1
  B2
  B2
  B3
  A2

Col1=B と Col2=2 で別の行を挿入すると、最終的には

Col1 Col2 順番
  1
  B 2 2
  B 2 3
  B3
  A2
  B 2 1

Order は値が 1 の数字で、各数字は 1 回しか表示されません。

4

1 に答える 1

1

これを保存する必要はありません。データを取得するときにそのような番号を生成できます。

select col1, 
       col2, 
       row_number() over (partition by col1, col2 order by random()) as random_order
from the_table
于 2013-01-21T15:22:42.183 に答える