Firebird中的本地化月份名称

问题描述

| 我需要获取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 (将#修改为@)