0

たとえば、column1 と column2 の 2 つの列を持つテーブルがあります。Column2 は一意ではありません。column2 の個別の値ごとに、テーブルから 1 行だけランダムな行が必要ですか?

つまり、結果セットには、column2 の個別の値の数と同じ数の行が含まれている必要があります。

例えば:

column1   column2
x         1
y         2
z         1

私は結果が欲しい

column1   column2
x         1
y         2

また

column1   column2
z         1
y         2

これはSQLのみを使用して可能ですか?

4

3 に答える 3

1

SELECT MAX(column1), column2 FROM yourtablename GROUP BY column2

于 2009-06-21T11:11:34.720 に答える
0

ROW_NUMBER() OVER(ORDER BY column1 asc)行番号を引き戻して、そのようにフィルタリングするようなことを試してみてください。

使用している SQL のフレーバーについて言及していませんでしたが、これを記憶から思い出していますが、この種のことは Oracle 9 で機能します。

于 2009-06-21T11:43:47.993 に答える