Database ORA-01840:使用Bind变量时,输入值不够长,不适合日期格式
我试图附加一个绑定变量:Year,但得到的错误是ORA-01840:input value不够长,不适合日期格式 sql是Database ORA-01840:使用Bind变量时,输入值不够长,不适合日期格式,database,oracle,Database,Oracle,我试图附加一个绑定变量:Year,但得到的错误是ORA-01840:input value不够长,不适合日期格式 sql是 Select SUM(CASE WHEN (date_start<= to_date('01/01/'||:Year,'MM/DD/YYYY') and (actual_termination_date is null or actual_termination_date > to_date('01/01/'||:Ye
Select SUM(CASE WHEN (date_start<= to_date('01/01/'||:Year,'MM/DD/YYYY') and
(actual_termination_date is null or actual_termination_date > to_date('01/01/'||:Year,'MM/DD/YYYY')))
THEN 1 ELSE 0 END ) AS CJAN
from PER_PERIODS_OF_SERVICE ppp
我试着用了一年,但没有用。
你能告诉我是什么导致了这个问题吗?嗯,逻辑似乎更简单,可以这样表达:
Select SUM(CASE WHEN extract(year from date_start) <= :Year and
(extract(year from actual_termination_date) >= :Year or
actual_termination_date is null
)
THEN 1 ELSE 0 END ) AS CJAN
from PER_PERIODS_OF_SERVICE ppp
也许这也能解决你的问题。用它来获得一年的第一天
truncto_date:YEAR,'YYYY','YYYY'年份的值是多少?这可能是问题所在:年份可以将2015年或2016年作为值,我有其他案例陈述案例何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时开始,何时结束,其他1个0结束,这一切正常。谢谢,但我有很多这样的案例陈述,每个月初我都会检查。所以我需要以某种方式追加年份。因为年份可以将2015年和2016年作为价值。如果你有不同的问题,那么你应该问这个问题。这个问题似乎是关于一整年的。我只需要知道如何在12个案例陈述中动态地添加年份后缀,我每个月都有一个。或者我所遵循的方法是否有解决办法