SQL Server 2014を使用しています。タイムスタンプの付いたレコードのリストがあります。時間は、ここで時間ごとのレコード数をカウントし、合計レコード数が値よりも多くなった時間をカウントするSQL
20は、私がこれまで持っているものだと言う、レコード数が一定数を超え、毎日どのように多くの時間をカウント:
select count(distinct datepart(hour, convert(datetime, OrderStateDate))) Count_HoursOver,
datepart(YEAR, convert(datetime, OrderStateDate)) Date_YEAR,
datepart(month, convert(datetime, OrderStateDate)) Date_MONTH,
datepart(day, convert(datetime, OrderStateDate)) Date_DAY
from Reporting.dbo.Orders
group by datepart(YEAR, convert(datetime, OrderStateDate)),
datepart(month, convert(datetime, OrderStateDate)),
datepart(day, convert(datetime, OrderStateDate))
having count(idscript) >= 20
結果が正しくないと私が作ることができません返されるものとその理由の感覚HAVINGを間違って使用していますか?何かアドバイスをいただければ幸いです!
時間数をカウントするのではなく、カウントを取得するために時間単位でグループ化してはいけませんか? – TZHX
私の基準にどれくらいの時間が合っているか知りたいので、私は時間単位でグループ化しませんでした。だから毎日、合計数が限界を超えた時間は何時間ですか?私が数時間でグループ化すると、終わった時間のリストが得られますが、1日ごとのリストはありません。 –