我需要從數據庫中檢索值以在圖表中繪製它們。爲此,我需要根據標準獲取價值。數據匹配不同的標準,必須返回不同的行/列到我的查詢查詢以多條標準檢索表格DB的值
(即)
我有一個表稱爲TABLEA其中有一列時間。因此,我需要根據時間關鍵值得出值,結果是TIME> 1和TIME < 10的行數,結果是TIME> 11和TIME < 20等等。是否可以在單個查詢中獲取值?我使用JDBC和Mysql。
我應該繪製所有的計數圖
在此先感謝。
我需要從數據庫中檢索值以在圖表中繪製它們。爲此,我需要根據標準獲取價值。數據匹配不同的標準,必須返回不同的行/列到我的查詢查詢以多條標準檢索表格DB的值
(即)
我有一個表稱爲TABLEA其中有一列時間。因此,我需要根據時間關鍵值得出值,結果是TIME> 1和TIME < 10的行數,結果是TIME> 11和TIME < 20等等。是否可以在單個查詢中獲取值?我使用JDBC和Mysql。
我應該繪製所有的計數圖
在此先感謝。
select sum(case when `time` between 2 and 9 then 1 else 0 end) as count_1,
sum(case when `time` between 12 and 19 then 1 else 0 end) as count_2
from your_table
這可以用CASE語句來完成,但它們可以得到一種冗長的。你可能只是想依靠布爾(真/假)的邏輯:
SELECT
SUM(TIME BETWEEN 1 AND 10) as `1 to 10`,
SUM(TIME BETWEEN 11 and 20) as `11 to 20`,
SUM(TIME BETWEEN 21 and 30) as `21 to 30`
FROM
TABLEA
短語TIME BETWEEN 1 AND 10) will either return
TRUE or
FALSE for each record.
TRUE FALSE being equivalent to
0`,我們那麼只需要總結的結果,給我們的新領域一個名字。
我還假設你想要1 <= TIME <= 10
而不是1 < TIME < 10
這個記錄,你說過,因爲如上所述,它會在TIME爲1,10,20等時下降數值。如果這是你的預期結果,那麼您可以將TIME BETWEEN 1 AND 10
調整爲TIME BETWEEN 2 AND 9
。