在Qlikview中从数据库加载数据时使用where cluase

时间:2015-12-04 15:52:26

标签: qlikview

在Qlikview数据库中加载数据时使用Where cluase需要帮助

以下是完美执行的脚本

    LET vCutOffDate  = MakeDate(2015,10,14);
    LOAD `CITY_NM`,
        `CST_NM`,
        `CST_TP`,
        `DATA_DATE`
    ;
    SQL SELECT `CITY_NM`,
        `CST_NM`,
        `CST_TP`,
        `DATA_DATE`
    FROM TEST.`ABC`
    ;

当我添加“where”子句时,它显示大于(>),小于(<)和等于(=)运算符的奇怪行为, 脚本无法获取<的任何数据和=运算符,而在我使用>时获取所有数据操作

以下是我正在尝试使用where子句

的最终脚本
    LET vCutOffDate  = MakeDate(2015,10,14);
    LOAD `CITY_NM`,
        `CST_NM`,
        `CST_TP`,
        `DATA_DATE`
    ;
    SQL SELECT `CITY_NM`,
        `CST_NM`,
        `CST_TP`,
        `DATA_DATE`
    FROM TEST.`ABC`
    WHERE (`DATA_DATE`<'$(vCutOffDate)')
    ;

以下是我看到的日期值如果我通过Select_Fields选项

查看DATA_DATE
    10/11/2015 0:00
    10/14/2015 0:00
    10/18/2015 0:00
    10/31/2015 0:00

1 个答案:

答案 0 :(得分:1)

我认为问题在于日期格式化。这取决于数据库,需要哪种日期格式,但这应该有效。

LET vCutOffDate  = TimeStamp(MakeDate(2015,10,14), 'YYYYMMDD');
LOAD `CITY_NM`,
    `CST_NM`,
    `CST_TP`,
    `DATA_DATE`
;
SQL SELECT `CITY_NM`,
    `CST_NM`,
    `CST_TP`,
    `DATA_DATE`
FROM TEST.`ABC`
WHERE (`DATA_DATE`<'$(vCutOffDate)')
;