Как реализовать QlikView аналог SQL запроса работая с таблицами из QVD.
получаю данные в несколько QVD файлов.
Тут основной вопрос это как реализовать вложенный запрос для подсчета количества покупок в чеке???
Запрос:
Select
(SELECT
Count(*)
FROM
pos.order_client,
pos.wares_order
WHERE
order_client.code_order = wares_order.code_order AND
order_client.id_workplace = wares_order.id_workplace AND
order_client.code_shop = wares_order.code_shop) AS "Кол-во позиций",
order_client.date_receipt AS "Дата чека (если чек не выбит)",
order_client.number_receipt AS "Номер чека(если чек выбит)",
order_client.date_order AS "Дата покупки",
order_client.sum_order AS "Сумма чека"
pos.order_client.code_order AS "id_Код чека",
order_client.code_client AS "ID_Код клиента",
order_client.code_shop AS "ID_Код магазина",
pos.order_client.id_workplace AS "ID_Код кассы"
FROM
pos.order_client;
Всем за ранее спасибо!
Можно сделать так:
order_client:
LOAD
code_order,
id_workplace,
code_shop,
date_receipt,
number_receipt,
date_order,
sum_order,
code_client
FROM [order_client.qvd];
NoConcatenate
wares_order:
LOAD
code_order,
id_workplace,
code_shop,
RowNo() as номерСтроки
FROM [wares_order.qvd];
LEFT JOIN(order_client)
LOAD
code_order,
id_workplace,
code_shop,
Count(номерСтроки) as "Кол-во позиций"
Resident wares_order
Group by
code_order,
id_workplace,
code_shop;
DROP TABLE wares_order;
+1
Дополню, по ситуации, можно сформировать таблицу с расчетом чего-либо и использовать ее как таблицу маппинга с присвоением значения в целевую таблицу через Applymap(). Иногда, это может быть эффективнее, чем использование left join.