目前正在嘗試創建一個查詢,該查詢過濾某人出生的月份但回傳錯誤。我希望它顯示在 05 月出生的每個人。
SELECT "Person Names"."Full Name" saw_0,
"Person"."Person Date Of Birth" saw_1
FROM "Workforce Management - Person Real Time"
WHERE "Person"."Person Date Of Birth" = date '%-05-%'
uj5u.com熱心網友回復:
DATE后跟一個字串是一個日期文字。字串必須具有格式yyyy-mm-dd。因此,該運算式date '%-05-%'在語法上是不正確的。
但是,您可以從日期中提取一個月:
WHERE EXTRACT(MONTH FROM "Person"."Person Date Of Birth") = 5
uj5u.com熱心網友回復:
考慮"Person"."Person Date Of Birth"是DATE你可以簡單地做的型別:
WHERE TO_CHAR("Person"."Person Date Of Birth",'MM') = '05'
更新:
WHERE TO_CHAR("Person"."Person Date Of Birth",'MM') = TO_CHAR(SYSDATE,'MM')
這將為您提供當月出生的人。
uj5u.com熱心網友回復:
您可以使用EXTRACT來檢查月份。如果您的列已經是日期型別,這將執行以下操作:
SELECT * FROM yourtable WHERE EXTRACT(MONTH FROM datecolumn) = 5;
如果列是 varchar 型別,您可以將其轉換為日期,然后執行相同操作:
SELECT * FROM yourtable WHERE
EXTRACT(MONTH FROM TO_DATE(varcharcolumn,'dd.mm.yyyy')) = 5;
請在此處查看一個簡單的示例:db<>fiddle
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/478824.html
下一篇:Oracle顯示編號
