大規模なSQLデータベースから時間単位でデータを抽出しようとしています。次のクエリは分単位でグループ化しています。毎時のデータでグループ化したいと思います。CONVERT {yyyy-mm-dd hh:mm:ss}から{yyyy-mm-dd hh}までの時間
select CONVERT(VARCHAR(20), t.counterTime, 100) as [Time],
t.instanceName
from table as t
WHERE t.counterId= @counterId
and t.counterTime >= @startTime
and t.counterTime < @endTime
group by t.instanceName, CONVERT(VARCHAR(20), t.counterTime, 100)
documentationもこのようなオプションを提供しません。何か案は?
を試してみてください、代わりに 'char(13)'を使用してください。 –
あなたのselectとgroup byで式 'CAST(t.counterTime AS DATE)'を使用してください。どのようにこの表現を思いついたのですか? –
@ Nick.McDermaidのキャスティングは現在のデータを失うでしょう... –