【发布时间】:2012-03-30 04:04:23
【问题描述】:
我当前的表结构是 12 列,每列代表月份。
我需要根据 sysdate 动态选择要更新的列。
对于 1 月完成的更新,查询应如下所示:-
UPDATE report SET jan VALUE = 'blabla'
对于 12 月完成的更新,查询应如下所示:-
UPDATE report SET dec VALUE = 'blabla'
有什么办法可以简化这一点。也许会变成这样:-
UPDATE report SET curMonth() VALUE = 'blabla'
【问题讨论】:
-
这是什么风格的数据库?
-
我必须列 - 值和日期。如果你想要一个 12 列的结果,按月份细分——使用 PIVOT 查询。
标签: sql oracle dynamic-sql