私は、反復せずに列にDISTINCT項が必要なクエリを設計したいと考えています。私はSQL Server 2008 R2エディションを使用しています。ここでSQL特定の列の用語の反復を避けるためのクエリ
は私のサンプルテーブルです:私が欲しいもの
id bank_code bank_name interest_rate
----------------------------------------------------------
1 123 abc 3.5
2 456 xyz 3.7
3 123 abc 3.4
4 789 pqr 3.3
5 123 abc 3.6
6 456 xyz 3.1
は「interest_rates」列ではなく、「bank_code」における用語のいずれかの繰り返しなし降順テーブルをソートすること、です。ここで
は、私が欲しいものです:
id bank_code bank_name interest_rate
----------------------------------------------------------
2 456 xyz 3.7
5 123 abc 3.6
4 789 pqr 3.3
私はDISTINCT演算子をしようとしているが、それはすべての列はなく、繰り返しのための単一のカラムのユニークな組み合わせを選択します。ここ は明らかに私が欲しいものを私に取得しないだろうこれは、私がやっているものです:
SELECT DISTINCT TOP 5 [ID], [BANK_CODE]
,[BANK_NAME]
,[INTEREST_RATE]
FROM [SAMPLE]
ORDER BY [INTEREST_RATE] DESC
は、これを達成する方法はありますか? 何か助けていただければ幸いです。
金利を選択する基準を決める必要があります。結果から、特定のbank_code/bank_nameの最大金利のように見えます。しかしIDはこれに従っているようには見えないので、あなたはID選択のロジックを説明できますか? – Andrew
IDは、選択/ソートされたレコードに対応します。私はID列の上/下でソート(または他の操作を実行)したくありません。 – YashG99
abcの結果行はそのルールに従いません。 abc for 3.6のIDは5です。 – Andrew