请你能解释我如何可以创建一个循环功能给我相同的结果如下,的Oracle SQL - 创建一个循环(Oracle11g的)
select to_char(add_months(trunc(sysdate,'MM'),- 0),'MM')||'-'||to_char(add_months(trunc(sysdate,'MM'),- 0),'YYYY') today,
to_char(add_months(trunc(sysdate,'MM'),- 1),'MM')||'-'||to_char(add_months(trunc(sysdate,'MM'),- 1),'YYYY') date_1,
to_char(add_months(trunc(sysdate,'MM'),- 2),'MM')||'-'||to_char(add_months(trunc(sysdate,'MM'),- 2),'YYYY') date_2,
to_char(add_months(trunc(sysdate,'MM'),- 3),'MM')||'-'||to_char(add_months(trunc(sysdate,'MM'),- 3),'YYYY') date_3,
to_char(add_months(trunc(sysdate,'MM'),- 4),'MM')||'-'||to_char(add_months(trunc(sysdate,'MM'),- 4),'YYYY') date_4,
to_char(add_months(trunc(sysdate,'MM'),- 5),'MM')||'-'||to_char(add_months(trunc(sysdate,'MM'),- 5),'YYYY') date_5,
to_char(add_months(trunc(sysdate,'MM'),- 6),'MM')||'-'||to_char(add_months(trunc(sysdate,'MM'),- 6),'YYYY') date_6,
to_char(add_months(trunc(sysdate,'MM'),- 7),'MM')||'-'||to_char(add_months(trunc(sysdate,'MM'),- 7),'YYYY') date_7,
to_char(add_months(trunc(sysdate,'MM'),- 8),'MM')||'-'||to_char(add_months(trunc(sysdate,'MM'),- 8),'YYYY') date_6,
to_char(add_months(trunc(sysdate,'MM'),- 9),'MM')||'-'||to_char(add_months(trunc(sysdate,'MM'),- 9),'YYYY') date_9,
to_char(add_months(trunc(sysdate,'MM'),-10),'MM')||'-'||to_char(add_months(trunc(sysdate,'MM'),-10),'YYYY') date_10,
to_char(add_months(trunc(sysdate,'MM'),-11),'MM')||'-'||to_char(add_months(trunc(sysdate,'MM'),-11),'YYYY') date_11
from dual
我想要的结果,在填充到列,像...
我想用这个回去2000年1月,但真的不希望再重复这些行。此外,每个月我都会增加一条线路来覆盖新月份。我想知道SQL中是否有LOOP函数类似于DO ... LOOP UNTIL在Excel中。
感谢
SMORF
有什么不对你的代码? “循环功能”是什么意思? – 2014-10-27 13:52:16
嗨,我想用这个回到2000年1月,但是,并不真的想重复这些路线。此外,每个月我都会增加一条线路来覆盖新月份。我想知道在SQL中是否有LOOP函数类似于DO ... LOOP UNTIL在Excel – SMORF 2014-10-27 13:56:34
SQL和PL/SQL是不同的引擎。如果你可以在'SQL'中实现某些东西,那么没有理由在'PL/SQL'中执行。 – 2014-10-27 13:59:57