分かりにくいタイトルで申し訳ないのですが、実現したいことは以下の通りです。
とあるログテーブル「log」があるとします。
datetime, int, で構成されているものとし、ログの落ちた日付時刻, ログ番号(1~3),とします。
この「log」テーブルを時間別で集計したいです。
集計したい時間を1時間ごとなら簡単にできますが、その中に「8時のみ8:00と8:30」、「17時のみ17:00と17:15」で集計したい場合どうしたらよいでしょうか?
集計したい時刻のテーブル「TimeTable」を作成し、そのテーブルでGROUP BYをしたのですが、
「8時のみ8時でかつ、30分より上か下か」と「17時のみ17時でかつ、15分より上か下か」の判断ができなくて困っています。
単純に「TimeTable」でグループ分けしてしまうと上の2つ以外は条件が合わず、集計が合いません。
質問にCREATE TABLEや現状のうまくいっていないSELECT文も載せた方が適切なコメントが付きやすいです。日や月、年などをまたぐデータもあるでしょうから、日付や時分秒はDATETIME型のカラムひとつで良いのでは? https://docs.microsoft.com/ja-jp/sql/t-sql/functions/date-and-time-data-types-and-functions-transact-sql?view=sql-server-2017

回答2件
あなたの回答
tips
プレビュー