问题描述
|
我需要获取TIMESTAMP字段的各个部分-特别是年份,本地化的月份名称(俄语),月份中的日期和小时间隔(例如\ '11-12 \')。
目前我想出了这个:
select
extract (year from prt.dtbegin) as f_year,(
case extract (month from prt.dtbegin)
when 1 then \'Январь\'
when 2 then \'Февраль\'
/* ... */
when 12 then \'Декабрь\'
end
) as f_month,cast (lpad (extract (day from prt.dtbegin),2,0) as char(2)) as f_day,(
cast (lpad (extract (hour from prt.dtbegin),0) as char(2))
|| \' - \'
|| cast (lpad (extract (hour from prt.dtbegin) + 1,0) as char(2))
) as f_hour
from prt
它工作正常(目前间隔为'23-24 \'是可以的),但我不喜欢它,尤其是每个月都有CASE语句。
因此,我想知道,在Firebird中是否有任何通用的获取本地化月份名称的方法?另外,我可以格式化时间戳的提取部分,而不是当前的cast-lpad-extract构造吗?
提前致谢。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)