2017-02-15 5 views
0

私はいくつかのカラムを持ち、1つはユーザ名で、その値は重複していて、クレジットフィールドには何らかの値があります。 2つの値の間にある。他のフィールドが重複しない場合のフィールドの最小値の選択

私は2700年と4000

の間、私が使用されている分(クレジット)どのように多くのユーザーを知りたい

 
username |credit 
john  |2000 
mary  |5000 
john  |1000 
john  |400 
mary  |3670 

:あなたを

select count(distinct(username)) having min(credit) 
をしかし、それは

+0

いくつかのサンプル・テーブル・データと予想される結果(同様にフォーマットされたテキスト)を追加します。現在のクエリの試行も表示してください。 – jarlh

答えて

1

正しくありません。 2つのステップが必要です:

  1. miとユーザーを検索するn(クレジット)は2700〜4000(ユーザーが最小クレジットを知るためにグループ分けする必要があります)です。
  2. これらのユーザーをカウントします。

クエリ:

select count(*) 
from 
(
    select username 
    from mytable 
    group by username 
    having min(credit) between 2700 and 4000 
) selected_users; 
関連する問題