Добрый день есть необходимость посчитать следующий факт:
(if(accept_cnt>=0 and measuretype_name = 'Факт',sum(nvl(tariff,0))/100, 0)):rcpn_outcom
судя по логу строится следующий запрос:
SELECT (CASE WHEN (accept_cnt >= 0) AND (measuretype_name = 'Факт') THEN sum(nvl(tariff,0)) / 100 ELSE 0 END) as rcpn_outcom
FROM (КУБ)
запрос падает с ошибкой
Column "DQMON_transfer.accept_cnt" must appear in the GROUP BY clause or be used in an aggregate function
что делаю не так? почему формируется невалидный запрос? и как поправить
конфиг на всякий случай:
display: {
headerStyle: {},
rotateXLabel: '45',
},
options: [
'DisplayAllBadges',
],
dataSource: {
koob: 'Vertica_dwh_luxms_svc_r00.DQMON_transfer',
style: {
measures: {
rcpn_outcom: {
title: 'Доход от приема',
format: '# ### [тыс, млн, млрд, тера]',
},
},
},
xAxis: 'mrc',
yAxis: 'measures',
sortBy: '-rcpn_outcom',
filters: {
mrc: [
'!=',
'null',
],
},
measures: [
"(if(accept_cnt>=0 and measuretype_name = 'Факт',sum(nvl(tariff,0))/100, 0)):rcpn_outcom",
],
hierarchy: [
'ufps=>pochtamt=>index_ops',
],
dimensions: [
'mrc',
],
},
view_class: '1II.column',
title: 'Сведения о доходе',