我有一個表存儲有關客戶的信息,其中包括一個列「dateofbirth」。我需要取得那些在過去一年(2015年)過生日的客戶。如何提取日期和月份,並將其與系統日期和月份進行比較?如何檢查客戶的生日是否已經過去一年?
-1
A
回答
0
您可以使用EXTRACT
:
SELECT *
FROM CUSTOMERS
WHERE EXTRACT(MONTH FROM dateofbirth) < EXTRACT(MONTH FROM SYSDATE)
OR ( EXTRACT(MONTH FROM dateofbirth) = EXTRACT(MONTH FROM SYSDATE)
AND EXTRACT(DAY FROM dateofbirth) <= EXTRACT(DAY FROM SYSDATE))
,或者您可以使用TO_CHAR
與MMDD
日年格式的
SELECT *
FROM CUSTOMERS
WHERE TO_CHAR(dateofbirth, 'MMDD') <= TO_CHAR(SYSDATE, 'MMDD')
0
select to_char(to_date('27-01-1966','DD-MM-YYYY'),'MMDD'),to_char(sysdate,'MMDD'),
CASE WHEN to_char(to_date('27-01-1966','DD-MM-YYYY'),'MMDD') > to_char(sysdate,'MMDD')
THEN 'No'
ELSE 'Yes'
END
from dual;
所以
WHERE to_char(dateofbirth,'MMDD') < to_char(sysdate,'MMDD')
1
我提出了以下解決方案
SELECT
name,
TO_CHAR(dob,'mm') MONTH,
TO_CHAR(dob,'dd') DAY
FROM
target_table
WHERE
TO_CHAR(sysdate,'yyyy') =2015
AND
(
to_number(TO_CHAR(dob,'mm'))<to_number(TO_CHAR(sysdate,'mm'))
OR
(
TO_CHAR(dob,'mm') =TO_CHAR(sysdate,'mm')
AND TO_CHAR(dob,'dd')<=TO_CHAR(sysdate,'dd')
)
);
我寫的代碼基於我的表中的數據...... DOB出生
tartget_table的= =日期所需的表
相關問題
- 1. php檢查日期是否已過去
- 2. 檢查日期和時間是否已經過去3天
- 3. 如何檢查是否已經過去了C++
- 4. Xcode Swift - 檢查是否已經過去了一天
- 5. 如何檢查是否與時區日期時間已經過去
- 6. 如何檢查日期是否已過
- 7. XSL-FO如何檢查一起是否已經生效
- 8. 軌道 - 如何檢查用戶是否已經一個月
- 9. 檢查用戶是否已經登錄?
- 10. MySQL檢查自日期時間以來是否已經過去了1分鐘
- 11. PHP檢查日期和時間是否已經過去15分鐘
- 12. 檢查客戶是否已投票
- 13. 連續檢查的日期是否已經過期
- 14. 檢查日期是否過去
- 15. 檢查給定日期是否過去
- 16. 檢查日期是否過去Javascript
- 17. 如何檢查自從使用java以來24H是否已經過去?
- 18. Python的檢查,如果一分鐘已經過去了
- 19. 檢查日期不是過去,客戶端和服務器端
- 20. 確定是否已經過去5秒
- 21. 知道java是否已經過去了
- 22. PHP檢查日期是否爲一年
- 23. Magento用jQuery通過電子郵件檢查客戶是否已經存在
- 24. 檢查日期是否已過 - Swift
- 25. 檢查用戶是否已經通過谷歌API登錄oauth2
- 26. 如何檢查用戶是否已經登錄?
- 27. 如何檢查用戶是否已經評論了
- 28. Python-requests:如何檢查用戶是否已經登錄?
- 29. Twitter數字:如何檢查用戶是否已經註冊
- 30. 如何使用PDO檢查用戶名是否已經存在?
這是爲什麼downvoted?我目前正在使用EXTRACT來獲得我需要的東西 –