私がやりたいことは、max(f1、f2、f3)を選択することです。私はこれが動作しないことを知っている
、しかし私は私がほしいと思うものはかなり明確であるべきであると思う
(アップデート1を見なさい)。SQLで複数のフィールドに対してmaxを選択するにはどうすればよいですか?
私はselect max(concat(f1、 ' - '、f2 ...))を行うことを考えていましたが、これにはさまざまな欠点があります。特に、連結を行うことは、おそらく物事を遅らせるでしょう。私が望むものを得るための最善の方法は何ですか?
更新1:私がこれまでに得た答えは、私が後にしたものではありません。 maxは一連のレコードに対して機能しますが、1つの値だけを使用して比較します。私はいくつかの値を考慮することができる順序のように、いくつかの値を最大限に考慮したい。
アップデート2:私は、次の表があるとします。
id class_name order_by1 order_by_2 1 a 0 0 2 a 0 1 3 b 1 0 4 b 0 9
私はそのCLASS_NAMEでグループレコードを意志の問合せをしたいです。次に、各クラス内で、order_by1
で昇順に並べ替えた後、order_by2
で昇順になるレコードを選択します。
select max(* order by order_by1 ASC, order_by2 ASC) from table group by class_name
実際、完全にはっきりしていません。 f1、f2&f3の合計が最大である場合、または3のうち最大のものが最大である場合、または何が結果になりますか? –
いくつかのサンプルデータを出力できますか?私はそれが私達が理解する必要があると思うものだと思う。 – AdaTheDev
実際に聞いた質問に対する回答だけが得られる。あなたがもともと尋ねた質問に対して、ここの答えはうまくいきます。将来、質問をあまり単純化しないようにして、実際に答えが必要な質問をしてください。 "あなたはおとぎ木を食べることができるかどうか実際に知りたいのですが、"私は果物を食べることができますか? " –