Oracle Apex 5:在条形图轴中使用多列

Oracle Apex 5: Using Multiple Columns in a Bar Charts Axix

我正在尝试创建一个条形图来显示 table 中多列的值。这是一个非常简单的条形图,我不知道如何在 APEX 5/SQL.

中设计

Chart describing what I mean

基本上,我希望条形图的 X 轴为我的 table(我选择的)的每一列都有条形图,并且条形图将代表该列的总和,按列分组名为 appname。

我知道我需要一个:

SELECT SUM(列) 从我的表 按应用名称分组

但我似乎无法获得代表我选择的每一列的条形图。

希望我已经解释清楚了,不知道如何帮助的同事说我解释得不好。

这是可以做到的,但据我所知只针对固定数量的数据集。这是我能够用一些虚拟数据做的:

您要做的是首先为其中一组创建图表,例如:

select code, sum(value) as total
  from data
 where app_id = 1
 group by code
 order by code

产生这个(用我的示例数据):

现在,当您查看区域定义时,您会看到该区域包含一个 "series":

(默认情况下它被命名为 "Series 1" - 但我已经将我的重命名为 "App 1")。

现在您可以右键单击系列 1,然后 select "Duplicate" 将创建一个新的重复系列。然后,您可以编辑这个新系列的名称和 SQL 以引用应用程序 2。然后当您 运行 时,您将看到我在开头显示的结果。

这是您需要做的。在图表源 SQL 中,定义如下内容

SELECT SUM(column1) as col_sum,
       Column1 as Series,
       column1 as Column_name
       FROM myTable GROUP BY appname
       sort by appname

union all

SELECT SUM(column2) as col_sum,
       Column2 as Series,
       column3 as Column_name
       FROM myTable GROUP BY appname
       sort by appname

union all

SELECT SUM(column3) as Col1_sum,
       Column3 as Series,
       column3 as Column_name
       FROM myTable GROUP BY appname
       sort by appname

------ 依此类推 - 对于所有列 ----- 在 Series 属性中,将 Sources > Type 设置为 Region Source。

在 Column Mappin 中,select 系列作为系列名称,Column_name 作为标签,col_sum 作为值。

在图表属性中,外观 > 堆栈 - 设置为否。

这应该有效。

或者,除了使用 union all,您还可以为每个系列定义单独的 SQL 查询,并且每列有一个系列。在这种情况下,您将不需要在查询中使用 Series