【发布时间】:2021-06-03 07:13:55
【问题描述】:
我的 Apex 应用程序中有 3 个交互式网格。 这三个的源表都是一样的,只是标志不同。
第一个网格:
select kpi_a_pk, dept_name, to_char(kpi_a_1,'999,999,999,999'),to_char(kpi_a_2,'999,999,999,999'),to_char(kpi_a_3,'999,999,999,999')
FROM KPI where dept_name = 'A'
列是数字,但需要以逗号分隔。在进程中,我使用 to_number 转换它们以保存它们。
第二格:
select kpi_a_pk, dept_name, to_char(kpi_a_1,'999,999,999,999'),to_char(kpi_a_2,'999,999,999,999'),to_char(kpi_a_3,'999,999,999,999')
from KPI where dept_name = 'B'
第三个网格需要是 A 列和 B 列的总和:
select kpi_a_pk, dept_name, to_char(kpi_a_1,'999,999,999,999'),to_char(kpi_a_2,'999,999,999,999'),to_char(kpi_a_3,'999,999,999,999')
from KPI where dept_name = 'C'
所以它的预期查询将具有如下逻辑:
KPI_A_1 = case when dept_name = 'A' then kpi_a_1
+case when dept_name = 'B' then kpi_a_1
但是当我尝试在查询中编写类似这样的内容时,它什么也没有返回。我需要转换为数字进行计算。总结,然后再次使用 to char 分隔逗号。
select kpi_a_pk, dept_name,
case when dept_name = 'A' then to_char(kpi_a_1,'999,999,999,999') else null end +
case when dept_name = 'B' then to_char(kpi_a_1,'999,999,999,999') else null end
,to_char(kpi_a_2,'999,999,999,999'),to_char(kpi_a_3,'999,999,999,999')
from KPI where dept_name = 'C'
所以如果 A 部门的网格:
B 部门的网格:
那么 C 部门的预期 Grid 应该是:
如何修改第三个网格查询以逐个单元格获取添加的值? 在我看来,不应该需要 DA。 我尝试修改查询,但没有返回任何内容。
【问题讨论】:
标签: sql oracle oracle-apex