QlikView Sort Expression MATCH с выражением IF внутри - PullRequest
0 голосов
/ 12 июня 2019

Я пытаюсь создать пользовательское выражение сортировки, используя оператор IF.

У меня есть следующее выражение IF:

=IF(VOTA >= -15 AND VOTA <= 15, '0',
IF(VOTA >= -60 AND VOTA <= -16, '-1 to 0',
IF(VOTA >= -120 AND VOTA <= -61, '-2 to -1',
IF(VOTA >= -180 AND VOTA <= -121, '-3 to -2',
IF(VOTA >= -240 AND VOTA <= -181, '-4 to -3',
IF(VOTA >= -241, '-4+',
IF(VOTA >= 60 AND VOTA <= 16, '1 to 0',
IF(VOTA >= 120 AND VOTA <= 61, '2 to 1',
IF(VOTA >= 180 AND VOTA <= 121, '3 to 2',
IF(VOTA >= 240 AND VOTA <= 181, '4 to 3',
IF(VOTA >= 241, '4+'
)))))))))))

Какие группы поле VOTA.

Затем в выражении сортировки я сделал это:

=MATCH((IF(VOTA >= -15 AND VOTA <= 15, '0',
IF(VOTA >= -60 AND VOTA <= -16, '-1 to 0',
IF(VOTA >= -120 AND VOTA <= -61, '-2 to -1',
IF(VOTA >= -180 AND VOTA <= -121, '-3 to -2',
IF(VOTA >= -240 AND VOTA <= -181, '-4 to -3',
IF(VOTA >= -241, '-4+',
IF(VOTA >= 60 AND VOTA <= 16, '1 to 0',
IF(VOTA >= 120 AND VOTA <= 61, '2 to 1',
IF(VOTA >= 180 AND VOTA <= 121, '3 to 2',
IF(VOTA >= 240 AND VOTA <= 181, '4 to 3',
IF(VOTA >= 241, '4+'
)))))))))))), '-4+', '-4 to -3', '-3 to -2', '-2 to -1', '-1 to 0', '0', '1 to 0','2 to 1','3 to 2','4 to 3','4+')

Но сортировка по-прежнему не требуется.

1 Ответ

0 голосов
/ 17 июня 2019

Мне удалось выполнить сортировку путем добавления Dual('xx to xx', n) и числовой сортировки.

=IF(VOTA <= -241, Dual('-4+',-5),
IF(VOTA >= -240 AND VOTA <= -181, Dual('-3 to -4',-4),
IF(VOTA >= -180 AND VOTA <= -121, Dual('-2 to -3',-3),
IF(VOTA >= -120 AND VOTA <= -61, Dual('-1 to -2',-2),
IF(VOTA >= -60 AND VOTA <= -16, Dual('0 to -1',-1),
IF(VOTA >= -15 AND VOTA <= 15, Dual('0',0),
IF(VOTA <= 60 AND VOTA <= 16, Dual('0 to 1',1),
IF(VOTA <= 120 AND VOTA <= 61, Dual('1 to 2',2),
IF(VOTA <= 180 AND VOTA <= 121, Dual('2 to 3',3),
IF(VOTA <= 240 AND VOTA <= 181, Dual('3 to 4',4),
IF(VOTA >= 241, Dual('4+',5)
)))))))))))
...