1. ホーム
  2. sql

[解決済み] SQL Server: 範囲指定による日付のグループ化

2022-02-11 15:02:15

質問

私は、日付、フォーマット:yyyy-mm-ddを含む1つのカラム(dateRec)を持つSQLテーブルを持っています。

SQLで日付の範囲を定義し、その範囲ですべての項目をグループ化する方法はありますか? ここでは、以下のグループが必要ですね。

  • グループ1=0〜7日齢
  • group two = 生後8日〜14日
  • group three = 生後15日~30日
  • group four = 31日~60日齢
  • グループ5=休息

そのテーブルからすべてのアイテムを取得するための私の標準的なクエリ。

CREATE PROCEDURE [dbo].[FetchRequests]
AS
BEGIN
    SET NOCOUNT ON;
    SELECT      subject,
                dateRec,
                category
    FROM        LogRequests
    WHERE       logStatus = 'active'
    ORDER BY    dateRec desc, subject
    FOR XML PATH('items'), ELEMENTS, TYPE, ROOT('ranks')

END

Timさん、何かありましたらよろしくお願いします。

どのように解決するのですか?

次のようなことが必要です。

select t.range as [score range], count(*) as [number of occurences]
from (
  select case 
    when score between  0 and  9 then ' 0-9 '
    when score between 10 and 19 then '10-19'
    when score between 20 and 29 then '20-29'
    ...
    else '90-99' end as range
  from scores) t
group by t.range

このリンクをチェック SQLで、範囲指定で「グループ化」する方法は?