postgresql-9.5 - 请将 oracle 视图转换为 postgresql
问题描述
CREATE VIEW HTWRK_AGEING_UNAGE_YYYYMM ("YEAR", "MONTH") AS SELECT YEAR, MONTH FROM (SELECT year, month FROM (SELECT TO_CHAR (n + 1994) year FROM (SELECT LEVEL n FROM DUAL CONNECT BY ROWNUM <= TO_CHAR (SYSDATE, ' YYYY') - 1994)) a, (SELECT LPAD (n, 2, '0') month FROM (SELECT LEVEL n FROM DUAL CONNECT BY ROWNUM <= 12)) b) 年份 || 月 <= TO_CHAR (SYSDATE, 'YYYYMM') UNION SELECT 'NA', 'NA' FROM DUAL;
解决方案
这在 Postgres 中更容易
create view htwrk_ageing_unage_yyyymm
as
select to_char(dt, 'yyyy') as year,
to_char(dt, 'mm') as month
from generate_series(date '1995-01-01', date_trunc('month', current_date), interval '1 month')
union all
select 'NA', 'NA';
推荐阅读
- python - 我安装了 Tornado,但我无法运行我的脚本。我不断收到“ImportError:没有名为龙卷风的模块”
- javascript - 如何裁剪 selenium 屏幕截图以使图像与给定 DOM 元素的尺寸相同
- sql-server - 有没有办法在 SQL 中包含一个超链接以跳转到某个代码段?
- c++ - 在 C++ 中的线程之间共享列表
- applescript - 返回到对话框列表树中的上一个对话框
- html - 根据 Angular 中的条件显示可点击的列表项
- sql - 多年来一直在哪些国家/地区发行电影(我们有记录)?
- java - 如何使用 dropwizard 按 ID 检索对象?
- sql-server - T-SQL 字符串位置关联
- bash - 字段是不可变的 k8s