如果我想2000-06-01T之間取得兩個日期之間的記錄我有表結構如下SQL查詢存儲爲鍵值對
**JobData** - Table
---------------------------
id - Number
key - Varchar
value - Varchar
Data:
-----------------
ID value key
-----------------------------------------------
21212 2010-06-11T15:00:00 Job_End
21213 2008-12-01T23:59:00 Job_Start
21214 2008-12-01T23:59:00 Job_Start
21215 2018-06-11T15:00:00 Job_End
21216 2015-06-11T15:00:00 Job_End
:00:00,2010-06- 11T15:00:00,寫下如下查詢。
SELECT * FROM JobData jd
WHERE
jd.key IN ('Job_Start', 'Job_End')
AND (jd.key = 'Job_Start' and jd.value BETWEEN '2000-06-01T:00:00' AND '2010-06-11T15:00:00')
AND (jd.key = 'Job_End' and jd.value BETWEEN '2000-06-01T:00:00' AND '2010-06-11T15:00:00')
但是我得到0條記錄,請有人讓我知道我失蹤的地方。
注:數據庫是ORACLE
感謝。
代碼已在第一時間。你的問題不是關於「關係數據庫」或關於「數據庫管理」。 – mathguy
謝謝你相應的更新:) – Raju
我會建議一個鍵值存儲是這種類型的數據不正確的結構。數據庫重構將爲您節省時間和性能。幾乎肯定會值得的。 – HLGEM