Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
Ноябрь 21, 2017, 07:22:00 am

Автор Тема: Есть ли в QlikView альтернатива функции ВПР?  (Прочитано 1713 раз)

Оффлайн Ирина

  • Наставник
  • **
  • Сообщений: 78
  • Рейтинг: +5/-0
    • Просмотр профиля
Есть ли в QlikView альтернатива функции ВПР?
« : Сентябрь 03, 2015, 04:59:17 pm »
Подскажите, пожалуйста, есть ли в скрипте альтернативная функция как ВПР в экселе?
То есть можно ли как-то сравнивать 2 разных текстовых поля в двух разных таблицах?
И если нашлись одинаковые значения, то нужно их вывести.

Оффлайн kvv

  • Гуру
  • ***
  • Сообщений: 135
  • Страна: 00
  • Рейтинг: +36/-0
    • Просмотр профиля
Re: Есть ли в QlikView альтернатива функции ВПР?
« Ответ #1 : Сентябрь 03, 2015, 05:01:55 pm »
Добрый день.
Попробуй использовать inner join.

Оффлайн Ирина

  • Наставник
  • **
  • Сообщений: 78
  • Рейтинг: +5/-0
    • Просмотр профиля
Re: Есть ли в QlikView альтернатива функции ВПР?
« Ответ #2 : Сентябрь 03, 2015, 05:21:38 pm »
А что такое inner join?

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

Re: Есть ли в QlikView альтернатива функции ВПР?
« Ответ #2 : Сентябрь 03, 2015, 05:21:38 pm »

Оффлайн kvv

  • Гуру
  • ***
  • Сообщений: 135
  • Страна: 00
  • Рейтинг: +36/-0
    • Просмотр профиля
Re: Есть ли в QlikView альтернатива функции ВПР?
« Ответ #3 : Сентябрь 03, 2015, 05:45:55 pm »
Можете привести пример двух таблиц которые имеются и что нужно из них выбрать (каков должен быть результат)? Для примера, достаточно будет 10-20 строк.
Так будет проще и будет конкретика.

Оффлайн Иван

  • Наставник
  • **
  • Сообщений: 62
  • Страна: ru
  • Рейтинг: +13/-0
    • Просмотр профиля
    • Теория и практика QlikView
Re: Есть ли в QlikView альтернатива функции ВПР?
« Ответ #4 : Сентябрь 08, 2015, 08:12:33 am »
Подскажите, пожалуйста, есть ли в скрипте альтернативная функция как ВПР в экселе?
То есть можно ли как-то сравнивать 2 разных текстовых поля в двух разных таблицах?
И если нашлись одинаковые значения, то нужно их вывести.

Ирина, здравствуйте!

ВПР на английском VLOOKUP (это в Excel). Для QlikView существует аналог:
lookup('<Поле, которое показываем>','<Поле в сравниваемой таблице, которое сопадает>',<Поле в исходной таблице>,'<Сравниваемая таблица>')

Пример:
Товары:
LOAD * INLINE [
    ID Товара, Наименование товара, Цена товара
    100, Удочка, 5000
    101, Леска, 560
    102, Крючок, 40
    103, Пассатижи, 90
    104, Складной нож, 2500
    105, Рюкзак, 3000
    106, Поплавок, 150
    107, Наживка, 100
    108, Кепка, 690
    109, Жилет, 1800
    110, Резиновая лодка, 7900
    111, Фонарь, 2000
];

Транзакции:
LOAD * INLINE [
    Номер транзакции, Код товара, Количество
    1, 106, 2
    2, 107, 1
    3, 111, 1
    4, 102, 1
    5, 102, 1
    6, 109, 1
    7, 100, 2
    8, 103, 1
    9, 107, 1
    10, 103, 1
    11, 100, 1
    12, 100, 2
    13, 107, 1
    14, 110, 2
    15, 102, 1
    16, 103, 1
    17, 109, 1
    18, 109, 1
    19, 110, 1
    20, 103, 1
    21, 111, 1
    22, 109, 1
    23, 108, 1
    24, 100, 2
    25, 108, 1
    26, 101, 1
    27, 106, 1
    28, 101, 2
    29, 105, 1
    30, 101, 1
];

[Сумма покупок]:
LOAD [Номер транзакции],
[Код товара],
[Количество],
lookup('Наименование товара','ID Товара',[Код товара],'Товары') as [Наименование товара],
lookup('Цена товара','ID Товара',[Код товара],'Товары') as [Цена товара],
[Количество]*lookup('Цена товара','ID Товара',[Код товара],'Товары') as [Сумма транзакции]
Resident [Транзакции];

DROP Tables [Товары], [Транзакции];
Бизнес-анализ, http://iiba.ru
Теория и практика QlikView, http://ivan-shamaev.ru/qlikview-theory-and-practic