【Oarcle】如何显示日本年号的日期格式 ?
语句大于一切,还需要语言吗?
1.
SELECT TO_CHAR(SYSDATE,'EEYY/MM/DD','NLS_CALENDAR = ''JAPANESE IMPERIAL''') from dual;
结果是:
令和05/02/25
Oracle SQL文中,年月日的显示,一定要使用双引号括起来,如
select to_char(sysdate, 'EEyy"年"mm"月"dd"日"','NLS_CALENDAR = ''JAPANESE IMPERIAL''') from dual;
结果是:
令和05年02月25日
Oracle中的 last_day, 是这个月的最后一天
select to_char(last_day(sysdate), 'yyyy"年"mm"月"dd"日"') from dual;
结果是:
2023年02月28日
然而, next_day 是下一周的某一天,比如下周四呢
select to_char(next_day(sysdate, 5), 'yyyy"年"mm"月"dd"日"') from dual;
结果是:
2023年03月02日
※Oracle 是从sunday开始计算的,所以 next_day 的第二个参数是: 5
select to_char(next_day(sysdate, '木曜日'), 'yyyy"年"mm"月"dd"日"') from dual;
结果也是:
2023年03月02日
数字转换中有两个注意。
人民币符号显示
select to_char(12345678.567, 'L999,999,999,999.90') from dual;
结果是:
¥12,345,678.57
※ 小数点将自动四舍五入,因为格式指定了两位小数。 Oracle在存储中,同样会自动四舍五入。
- 如果对自动转换中的左边的空格不满意,可以利用“FM”格式去除。
select to_char(12345678.567, 'fmL999,999,999,999.90') from dual;
结果是:
¥12,345,678.57