sql >> データベース >  >> RDS >> Oracle

数値クエリORACLEを使用したJFreeChart

    このようなものを試してください(これがsqlfiddleです ):

    select case 
               when time >= 23 then '23 =< TIME'
               when time < 23 and time >= 22.3 then '23 > TIME >= 22,3'
               when time < 22.3 and time >= 21.6 then '22,3 > TIME >= 21,6'
               when time < 21.6 and time >= 20.9 then '21,6 > TIME >= 20,9'
               else '20,9 > TIME'
            end   || ' with value '|| count(*) v
    from your_table
    group by case 
               when time >= 23 then '23 =< TIME'
               when time < 23 and time >= 22.3 then '23 > TIME >= 22,3'
               when time < 22.3 and time >= 21.6 then '22,3 > TIME >= 21,6'
               when time < 21.6 and time >= 20.9 then '21,6 > TIME >= 20,9'
               else '20,9 > TIME'
             end 
    

    と結果:

    21,6 > TIME >= 20,9 with value 8 
    20,9 > TIME with value 4 
    22,3 > TIME >= 21,6 with value 6 
    23 > TIME >= 22,3 with value 15 
    23 =< TIME with value 66
    

    更新: DavidAldrigeが提案したように、サブクエリを作成できます:

    select intrvl || ' with value '|| count(*) v
    from
    (select case 
               when time >= 23 then '23 =< TIME'
               when time < 23 and time >= 22.3 then '23 > TIME >= 22,3'
               when time < 22.3 and time >= 21.6 then '22,3 > TIME >= 21,6'
               when time < 21.6 and time >= 20.9 then '21,6 > TIME >= 20,9'
               else '20,9 > TIME'
            end   intrvl, time
    from t)
    group by intrvl
    

    そしてここに別のデモがあります




    1. プリペアドステートメントを使用して、挿入された行のIDを返すにはどうすればよいですか?

    2. PostgreSQLの日付から曜日名を取得する

    3. PostgreSQLの隠された機能

    4. 特定の値を保持する可能性のあるすべてのレコードのSQL選択