Qlikview 左连接两个 table 并生成数据到 qvd

Qlikview left join two table and generate the data to qvd

我是 qlikview 的新手,不确定左连接是否与正常连接相同sql:SELECT column_name(s) 从表 1 LEFT JOIN table2 ON table1.column_name = table2.column_name;

希望得到您的帮助,使用 TRIP_ID 左连接表格,并使用 ARRIVE_DT 对时间段进行分类,然后在 qvd

中生成数据
LOAD "TRIP_ID",
    "PM_M",
    "ARRIVE_DT",
    "CHASSIS_MAX_LADEN_WEIGHT_Q";
SQL SELECT *
FROM Table1."V_GATE_PM_TRIP";

LOAD "TRIP_ID",
    "CREATE_DT",
    "MODIFIED_DT";
SQL SELECT *
FROM Table2."V_GATE_PM_TRIP_CNTR";

谢谢。

只需在第二次加载之前添加 LEFT JOIN
如果您从相同的 SQL 源加载两个表,则只需使用与您相同的 SQL 语法写在你的问题

这是我在网上查看后设法做的,它生成了按日期排序的数据的 qvd。

TEMP_TABLE1:
LOAD "TRIP_ID",
    "PM_M",
    "ARRIVE_DT";
SQL SELECT *
FROM EODWADMIN."V_GATE_PM_TRIP";

LEFT JOIN 

LOAD "TRIP_ID",
    "CREATE_DT",
    "MODIFIED_DT";
SQL SELECT *
FROM EODWADMIN."V_GATE_PM_TRIP_CNTR";


TABLE2:
LOAD*, 1 AS FLAG
RESIDENT TEMP_TABLE1 ORDER BY ARRIVE_DT;

STORE TABLE2 INTO PM.QVD (QVD);

在 QlikView 中,LEFT JOIN 的工作方式与 SQL 中的略有不同。 在 SQL 中,您在左连接的句子中指定了 table 中的字段:

SELECT *
FROM Table1 t1
     LEFT JOIN Table2 t2 on t1.FieldA=t2.FieldB

在 QlikView 中,JOIN 使用字段名称,您无需指定名称。如果字段名称不同,您必须重命名其中一个(或两者)以获得相同的名称:

TABLE1:
LOAD
    TRIP_ID1 as JOIN_KEY,
    PM_M,
    ARRIVE_DT
FROM Tabel1
;

LEFT JOIN (TABLE1)
LOAD
    TRIP_ID2 as JOIN_KEY,
    CREATED_DT,
    MODIFIED_DT
FROM Table2
;