如何用罗马数字显示当前年份?

问题描述

我正在尝试将当前年份显示为罗马数字。我尝试将to_char嵌套在另一个to_char中作为参数,但是没有运气。如果to_char(current_date,'year')返回2020,为什么我不能再使用另一个to_char?


 select current_date,to_char(current_date,'RM') AS "Month",to_char(to_char(current_date,'year'),'rn') AS "year"
       
from dual;

解决方法

我试图将当前年份显示为罗马数字。

您可以从日期中提取年份,然后使用to_char()将数字转换为罗马数字:

select to_char(extract(year from current_date),'FMRM') roman_year from dual;

| ROMAN_YEAR |
| :--------- |
| MMXX       |

修饰符FM删除结果字符串否则将包含的前导空格。