Неофициальный форум пользователей Qlik Sense & Qlikview

Для разработчиков => Вопросы по Qlik Sense & QlikView => Тема начата: WA от 01 марта 2018, 02:07:11

Название: изощренная выборка (Qlik Sense, Qlikview)
Отправлено: WA от 01 марта 2018, 02:07:11
Нужно выбрать только те контексты, у которых для направления = 'Исход'  Провайдер<>'SIP' , а число CallID >3. Не могу осилить. Помогите.
Название: Re: изощренная выборка
Отправлено: admin от 01 марта 2018, 06:50:09
привет
Напрашивается:
sum( {<направление={'Исход'},Провайдер={'<>SIP'},CallID={'>3'}>} СуммаЧегоТо)
Название: Re: изощренная выборка
Отправлено: WA от 02 марта 2018, 02:59:36
Так это же сумма чего то, а мне нужна выборка.
Название: Re: изощренная выборка
Отправлено: admin от 03 марта 2018, 08:40:52
Можно уточнить, какая модель, что и где надо получить?
формулу привел в качестве примера, сумма чего то по указанной выборке.
Выборка определяется в фигурных скобках.
Подробнее о механизме выборок в выражениях здесь. (https://help.qlik.com/ru-RU/sense/November2017/Subsystems/Hub/Content/ChartFunctions/SetAnalysis/set-modifiers.htm)
Название: Re: изощренная выборка
Отправлено: WA от 05 марта 2018, 04:00:36
Загружаю из csv файла.
LOAD [Call ID], Направление, Контекст, Провайдер,  [Код завершения].
В сущности Контекст может быть n [Call ID].
Т.е. например для контекста 3635637314 имеем [Call ID] 101,111,121,180. Для 101 направление 'Вход', для остальных 'Исход' и провайдеры разные.

    Необходимо выбрать только те контексты, у которых для направления = 'Исход'  Провайдер<>'SIP' , а число Count([Call ID]) >3.
На ум приходит только использование измеряемого вычисления, но как?
Название: Re: изощренная выборка
Отправлено: admin от 06 марта 2018, 09:36:31
Вы все загрузили в одну модель, и делаете объект или вам нужна модель данных уже с определенной выборкой?
Название: Re: изощренная выборка
Отправлено: WA от 07 марта 2018, 10:35:58
Загрузил в одну модель и делаю объект.
Название: Re: изощренная выборка
Отправлено: WA от 12 марта 2018, 04:08:15
aggr( Count ([Call ID])=3 ,Контекст)
Так вывожу контексты, для которых число Call ID =3

aggr(Count (if(Провайдер<>'SIP',[Call ID]) ),Контекст)
А так контексты, в которых встречается провайдер отличный от  SIP.

Как теперь объединить эти выводы, добавив еще условие
направления = 'Исх'?
Название: Re: изощренная выборка
Отправлено: romanwar от 21 марта 2018, 01:43:34
Если значения уникальные (встречаются в единственном экземпляре) можно пользоваться анализом множеств и функцией only
Название: Re: изощренная выборка
Отправлено: WA от 22 марта 2018, 10:50:54
Цитата: romanwar от 21 марта  2018, 01:43:34  
Если значения уникальные (встречаются в единственном экземпляре) можно пользоваться анализом множеств и функцией only

Контексты уникальны. Хотел с Only, но не осилил. Может подскажите?