Переведите оператор SQL в выражение Qlikview.

В настоящее время я пытаюсь закодировать выражение, но я знаю только, как запросить его в инструкции SQl

SQL:

select * from Orders o
where o.product_name != MBProductName 
AND
o.transaction_id in 
(
select m.transaction_id from marketBasket m where m.product_name = MBProductName);

Я хочу представить результаты в виде таблицы.

И он выполнит этот запрос, когда я выберу MBProductName.

кто-нибудь может мне помочь с переводом? заранее спасибо

Мои сценарии:

LOAD  
 Customer_ID, 
 Customer_Country, 
 Customer_Gender, 
 Customer_BirthDate, 
 Customer_Age_Group, 
 Customer_Type, 
 Customer_Age, 
 Real_age, 
 Continent, 
 Country_Name


Orders:
LOAD  
 Customer_ID, 
 Employee_ID, 
 Street_ID, 
 Order_Date, 
 Delivery_Date, 
 Order_ID As %%MarketBasket, 
 Order_ID,
 Order_Type, 
 Product_ID, 
 Quantity, 
 Total_Retail_Price, 
 CostPrice_Per_Unit, 
 Discount, 
 Profit_per_Product, 
 PrfitRange, 
 ProfitMarginRange


Products:
LOAD Product_ID, 
 Product_Line, 
 Product_Category, 
 Product_Group, 
 Product_Name, 
 Supplier_Country, 
 Supplier_Name

TmpMarketBasket:
Load
%%MarketBasket AS TmpOrderId,
Product_ID AS TmpProductId,
Order_Date As TmpOrderDate
Resident Orders;

LEFT JOIN
Load 
Product_ID AS TmpProdcutId,
Product_Name AS TmpProductName,
Product_Line AS TmpProductLine,
Product_Category As TmpProductCategory,
Product_Group As TmpProductGroup
Resident Products;

MarketBasket:
LOAD
TmpOrderId                 as %%MarketBasket,
TmpProductName            as MBProductName,
TmpProductGroup             as MBProductGroup
RESIDENT TmpMarketBasket;

DROP TABLE TmpMarketBasket;

person momoni    schedule 14.08.2014    source источник


Ответы (1)


Я не уверен, как заполняется таблица MarketBasket (возможно, вы могли бы привести пример некоторых данных из нее), однако вы могли бы создать прямую таблицу с вашими обязательными полями, а затем использовать следующее выражение для общего количества:

=sum({$<Product_Name-={$(=GetFieldSelections(MBProductName))}>} Quantity)

Это делает выбор, сделанный вами в MBProductName, а затем исключает его из значений в Product_Name во время суммирования поля Quantity. Поскольку записи, в которых сумма Product_Name = MBProductName будет равна нулю, они будут исключены из таблицы.

person i_saw_drones    schedule 14.08.2014
comment
спасибо за ваш ответ в таблице MarketBasket есть 3 столбца: %% MarketBasket (order_ID), MBProductName (ProductName), MBProductGroup (Product_Group) - person momoni; 15.08.2014