1
我們的數據庫存儲調用數據的,與當調用與用於撥打的電話號碼一起做的日期時間值。我想知道我怎麼能得到的所有,都使得過去一小時內的呼叫和以前沒有進行呼叫的電話號碼。我嘗試使用下面的查詢,但沒有成功:獲得價值沒有出現之外的日期範圍
select distinct(calling_number)
from calldb.call_logs
where call_started >= sysdate-1/24
and calling_number not in
(
select distinct(calling_number)
from calldb.call_logs
where call_started < sysdate-1/24
)
的,我想什麼實例來完成: 假設數據庫具有以下數據和當前時間爲上午2:30
calling_number call_started
9497587364 1:24 am
5719389402 1:25 am
7418320194 1:33 am
7584729818 1:34 am
9497587364 1:36 am
其結果將是
7418320194
7584729818
因爲這兩個這些數字顯示在過去一小時內,並在數據庫中還沒有出現之前。任何意見非常感謝。
當您嘗試查詢您分享的內容時發生了什麼?它應該產生正確的答案。 – mathguy
@mathguy結果是空的。我認爲查詢出了問題,因爲我幾乎肯定應該有一些匹配的結果,但也許我錯了 – mgamez
'calling_number'是否可以是'NULL'?不要猜測,找出通過運行一個小的查詢:從call_logs'SELECT COUNT(*),其中calling_number是null'。這是一種會使'不在'選擇錯誤的數據。 (如果你要求某個東西不在列表中,並且列表包含NULL,那麼你不能保證你所比較的東西不在列表中,因爲NULL可以是任何東西。) – mathguy