次のクエリで正常に機能する折れ線グラフがあります。
SELECT peakdate, peakusage
FROM peaktable
WHERE peakDate BETWEEN '#arguments.dtBegin#' AND '#arguments.dtEnd#'
ORDER BY peakdate
日付出力は次のようになります: 2014-01-01 00:00:00.0 これを日時チャートのミリ秒に変換するのに問題はありません.JavaScript getTime() 関数を使用して日付を変換すると、すべて問題ありません.
ここで、グラフにすべてのデータ ポイントを表示する代わりに、各日の MAX ピークを表示する必要があります。SQL Server でうまく機能する、私が書いたクエリを次に示します。
SELECT convert(varchar(10), peakdate, 120) as peakdate , MAX(peakusage)
FROM peaktable
WHERE peakDate BETWEEN '#arguments.dtBegin#' AND '#arguments.dtEnd#'
GROUP BY convert(varchar(10), peakdate, 120)
ORDER BY convert(varchar(10), peakdate, 120)
この日付出力は、最後に時間がない 2014-01-01 のようになります。日付レベルでグループ化するために、varchar(10) に保持しました。残念ながら、JavaScript の getTime() 関数は、日付に時刻要素が関連付けられていないため、エラーをスローします。だから私は賢いと思って、00:00:00.0 を SQL ステートメントの日付の最後に連結しましたが、それでもエラーがスローされます。JavaScriptはそれを日付として認識していなかったと思います:
SELECT CONCAT(convert(varchar(10), peakdate, 120),' 00:00:00.0') as peak , MAX(peakusage)
FROM peaktable
WHERE peakDate BETWEEN '#arguments.dtBegin#' AND '#arguments.dtEnd#'
GROUP BY convert(varchar(10), peakdate, 120)
ORDER BY convert(varchar(10), peakdate, 120)
ハイチャートの日時チャートで時間要素のない日付オブジェクトを使用する方法について誰か考えがありますか? グラフ化する必要がある次のクエリは、その月のピーク ポイントを表示することです。したがって、日付形式は yyyy-mm のようになります。