Перейти к основному содержимому Перейти к дополнительному содержимому

Only

Only() возвращает значение, если есть только один возможный результат, который может быть получен из агрегированных данных. Например, при поиске одного продукта, где стоимость единицы = 9, будет возвращено значение NULL, если стоимость единицы 9 есть у нескольких продуктов.

Синтаксис:  

Only([{SetExpression}] [TOTAL [<fld {,fld}>]] expr)

Возвращаемые типы данных: двойное значение

Аргументы:  

  • expr: Выражение или поле, содержащее данные для измерения.
  • SetExpression: По умолчанию функция агрегирования агрегирует множество возможных записей, определенных выборкой. Альтернативный набор записей может быть определен набором выражений анализа.
  • TOTAL: Если слово TOTAL стоит перед аргументами функции, вычисление выполняется по всем возможным значениям, указанным в текущих выборках, а не только в тех, которые относятся к значению текущего измерения, т. е. измерения диаграммы игнорируются. После префикса TOTAL может быть указан список, включающий одно или несколько имен полей в угловых скобках <fld>. Эти имена полей должны быть поднабором переменных измерений диаграммы.

    Определение объема агрегирования

Примечание к подсказкеИспользуйте функцию Only(), если необходимо получить значение NULL в случае нескольких возможных значений в данных образца.

Примеры:  

Примеры и результаты
Пример Результат

Only({<UnitPrice={9}>} Product)

Значение BB, поскольку это единственный элемент Product, у которого элемент UnitPrice равен 9.

Only({<Product={DD}>} Customer)

Значение Betacab, поскольку это единственный элемент Customer, продающий Product под названием «DD».

Only({<UnitPrice={20}>} UnitSales)

Число элементов UnitSales, где элемент UnitPrice, равный 20, составляет 2, поскольку есть только одно значение элемента UnitSales, где UnitPrice = 20.

Only({<UnitPrice={15}>} UnitSales)

Значение NULL, поскольку существуют два значения элемента UnitSales, где UnitPrice = 15.

Данные, используемые в примерах:

ProductData:

LOAD * inline [

Customer|Product|UnitSales|UnitPrice

Astrida|AA|4|16

Astrida|AA|10|15

Astrida|BB|9|9

Betacab|BB|5|10

Betacab|CC|2|20

Betacab|DD||25

Canutility|AA|8|15

Canutility|CC||19

] (delimiter is '|');

 

Пример данных в виде таблицы
Customer Product UnitSales UnitPrice
Astrida AA 4 16
Astrida AA 10 15
Astrida BB 9 9
Betacab BB 5 10
Betacab CC 2 20
Betacab DD - 25
Canutility AA 8 15
Canutility CC - 19

Помогла ли вам эта страница?

Если вы обнаружили какую-либо проблему на этой странице и с ее содержанием — будь то опечатка, пропущенный шаг или техническая ошибка, сообщите нам об этом, чтобы мы смогли ее исправить!

Присоединяйтесь к программе модернизации аналитики

Remove banner from view

Модернизируйте ваши важные приложения QlikView без ущерба с помощью программы модернизации аналитики. Щелкните здесь для получения дополнительной информации или свяжитесь с нами: ampquestions@qlik.com