0
私はいくつかのテーブルを持ち、存在に基づいて新しい列を生成するためのツールをユーザーに提供します。ウィンドウ関数による集計関数のSQL文の行をフィルタリングする方法は?
表:
+---+
| a|
+---+
| 0|
| 1|
| 2|
| 3|
| 4|
| 5|
+---+
新しい列名:これを書い修正するためにどのようにmax(a) over(WHERE a < 3)
:b
新しい列ルールは次のようでなければなりませんか?
結果は、SQL文のようにする必要があります。SELECT *, (SELECT max(a) FROM table WHERE a < 3) as b FROM table
。返信:
+---+---+
| a| b|
+---+---+
| 0| 2|
| 1| 2|
| 2| 2|
| 3| 2|
| 4| 2|
| 5| 2|
+---+---+
しかし、私はover()WHEREステートメントの内部には書き込めず、ユーザーがテーブルの名前を知ることができません。この問題をどうやって解決するのですか?