我正在創建SQL報告以查詢來自NetBackup OpsCenter數據庫的結果(MySQL?) 我正在學習如何使用SQL,因此請原諒我的無知。我如何過濾昨天(不是最後24小時)並在我的標題中顯示昨天的日期?
我在下面創建的報告顯示了前一天的失敗(與之前的24小時相反,每次運行都會有所不同)。
SELECT (GETDATE()-1) AS 'Date', statusCode AS STATUS, COUNT(*) AS COUNT
FROM domain_JobArchive
WHERE DATEDIFF(day, UtcBigIntToNomTime(endTime), GETDATE()) =1
and masterServerId=59
GROUP BY statusCode;
我想改變這個,所以它報告日期被用作標題...不是它自己的列。
電流輸出: Count of errors for yesterday (non-PCI)
Date STATUS COUNT Apr 24, 2013 11:43:10 AM 288 1 Apr 24, 2013 11:43:10 AM 0 6861 Apr 24, 2013 11:43:10 AM 1 52 Apr 24, 2013 11:43:10 AM 6 63 Apr 24, 2013 11:43:10 AM 50 1 Apr 24, 2013 11:43:10 AM 58 2 Apr 24, 2013 11:43:10 AM 191 1 Total 7 Rows , 1 Page(s)
所需的輸出: Count of errors for Apr 24, 2013 (non-PCI)
STATUS COUNT 0 6861 1 52 6 63 50 1 58 2 191 1 288 1 Total 7 Rows , 1 Page(s)
這樣,每次執行時間 - 它拉起來完全相同的數據。
如果從昨天上午7點開始到今天上午7點,無論何時執行,情況會更好。
哎呀,編輯了幾次。 – Tom 2013-04-25 19:19:53
進一步測試之後...會出現我的原始查詢工作正常,因爲它正在檢查所有記錄的日期只有(1)不同。 DATEDIFF(day,UtcBigIntToNomTime(endTime),GETDATE())= 1 – user2316707 2013-04-26 16:35:31
好。如果您想使用上午7:00至上午7:00的範圍,則可以按照上述方法從日期減去7小時。 – Tom 2013-04-26 16:52:54