具有Group By和Pivot的PL / SQL案例

时间:2018-03-15 21:40:30

标签: plsql

我在APEX交互式报告中提供的数据,使用pivot语句显示15年的月度数据。我根据是否包含使用case语句的小数来对某些值进行颜色编码。

我的问题是,通过使用case语句,它从一行数据创建多行。我的报告显示每个项目有2行,一行包含不带小数的值,一行包含包含小数的值。

Multiple Rows

如何将行合并为一行?使用分组依据?或者,还有更好的方法?

select buscat, prod_parent, year_month, volume, load_source, tstamp,
   case when instr(VOLUME, '.') > 0 then 'color:#FF7755;' else 'color:#000000;' end flag
 from HISTORY where id > 0

以下是来自SQL查询的原始数据......

SQL return

1 个答案:

答案 0 :(得分:0)

根据SQL返回图像,数据不会重复。看起来您没有过滤' Volume == 0'。尝试更改ID' ID'到了'卷'在where子句中:

select yearMonth, volume, load_source, tstamp,
    case when instr(volume, '.') > 0 then 'color:#FF7755;' else 'color:#000000;' end flag
from HISTORY 
where volume > 0