在下面的代码中,我从具有完全相同的列名的两个excel文档中加载了数据,因此为表之一指定了别名。
当我尝试在脚本末尾放置not match()
条件时,会发生我的问题。
// New table
NewTable:
LOAD
[namn] as namnNy
FROM
[pglistaNy.xlsx]
(ooxml, embedded labels);
// Old table
OldTable:
LOAD
[namn]
FROM
[pglistaOld.xlsx]
(ooxml, embedded labels)
Where not match(namn, namnNy);
我收到一条错误消息,告诉我它不能识别namnNy
别名,为什么呢?还有什么更好的解决方案/方法?
答案 0 :(得分:2)
match
功能不适用于您的情况。您正在尝试匹配来自不同表的字段名称中的值。您应该使用exists
函数(有关Qlik help page的完整文档)
所以您的脚本将是:
// New table
NewTable:
LOAD
[namn] as namnNy
FROM
[pglistaNy.xlsx]
(ooxml, embedded labels);
// Old table
OldTable:
LOAD
[namn]
FROM
[pglistaOld.xlsx]
(ooxml, embedded labels)
Where
not Exists(namnNy, namn);
示例qvw文件here