Qlikview左联接两个表并生成数据到qvd

时间:2018-08-31 13:10:42

标签: qlikview

我是qlikview的新手,不确定左联接是否与普通sql相同:SELECT column_name(s) 从表1 左联接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";

谢谢。

3 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分:0)

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

<div v-for="question in getQuestions(sectionId)">
    <input type="text" v-model="question.title" />
</div>

答案 2 :(得分:0)

在QlikView中,LEFT JOIN的工作方式与SQL中的稍有不同。 在SQL中,您可以在左连接的句子中的两个表中指定字段:

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
;