これは私の最初の選択です。SQL - 日付範囲を持つSUM列の方法
EMPLID DATE TIMEIN GRACEPERIOD NUMBER_OF_LATE
------ -------- ------ ----------- --------------
000001 1/1/2017 8:16 8:15 1
000001 1/2/2017 8:25 8:15 1
000001 1/3/2017 8:10 8:15 1
000002 1/1/2017 8:30 8:15 1
000002 1/2/2017 8:14 8:15 0
000002 1/3/2017 8:23 8:15 1
として名前を付け和の結果は次のようにする必要があります:
EMPLID DATE NUMBER_OF_LATE
------ ------------------- --------------
000001 1/1/2017 - 1/3/2017 3
000002 1/1/2017 - 1/3/2017 2
私はちょうどEMPLIDによってグループ化すると、日付の範囲に基づいて合計します。
することにより、グループの後に条件を設定することができますEMPL_CTEからCONVERT(nvarchar(200)、[MINDATE])+ ' - ' + CONVERT(nvarchar(200)、[MAXDATE])、EMPLID、NO_OF_LATEを選択します。 –
DBMSにタグを付けます。再使用! – jarlh
どのDBMSを使用していますか? Postgres?オラクル? –