Postgresの2つのフィールドのMIN()を取得するにはどうすればよいですか?
-
11-07-2019 - |
質問
次のようなテーブルがあるとします:
name | score_a | score_b
-----+---------+--------
Joe | 100 | 24
Sam | 96 | 438
Bob | 76 | 101
... | ... | ...
score_aとscore_bの最小値を選択したい。つまり、次のようなものです。
SELECT name, MIN(score_a, score_b)
FROM table
結果は、もちろん次のようになります。
name | min
-----+-----
Joe | 24
Sam | 96
Bob | 76
... | ...
ただし、Postgresでこれを試すと、"指定された名前と引数タイプに一致する関数がありません。明示的な型キャストを追加する必要がある場合があります。 MAX()およびMIN()は、列ではなく行で機能するようです。
しようとしていることを実行できますか?
他のヒント
PostgreSQLの LEAST()
関数のドキュメントへのリンクは次のとおりです。
http://www.postgresql.org/docs/ current / static / functions-conditional.html#AEN15582
次のような列にデータを入力すると、答えを得ることができます。
SELECT name, MIN(score_a, score_b) as minimum_score
FROM table
ここでは、 score_a
と score_b
の間に最小値を入れ、その値を minimum_score
という名前の列に格納して印刷します。
所属していません StackOverflow