来自完整的Noob的问候!
我试图在最新的Qlik Sense应用程序中摆脱编码的束缚。该代码在某种程度上类似于MYSQL,我正在寻找解决一个特定问题的技巧。
这是代码:
T1:
LOAD * Inline [
F1, F2
a, 1
a, 2
b, 3
c, 4
];
T2:
LOAD DISTINCT * Inline [
F1, F2
a, 1
b, 3
b, 3
c, 4
];
产生以下预览:
1. F1 F2
2. a 1
3. a 2
4. b 3
5. c 4
我的目标是:
1. F1 F2
2. a 1
3. a 2
4. b 3
5. c 4
6. a 1
7. c 4
8. b 3
我发现根据代码,T1和T2不是不同的表,所以我正在寻找一种方法使它们如此,然后将它们与参数“ DISTINCT”连接起来
要么
我正在寻找一个仅将“ DISTINCT”应用于代码的T2部分的参数。
任何建议或帮助都非常欢迎!
最佳答案
我认为您已经考虑过了。如果不带DISTINCT加载就可以存储所有数据。 DISTINCT将删除一些数据,因为它是从第一次内联加载开始重复进行的。
所以这:
T1:
LOAD * Inline [
F1, F2
a, 1
a, 2
b, 3
c, 4
];
T2:
LOAD * Inline [
F1, F2
a, 1
b, 3
b, 3
c, 4
];
给你这个:
技巧是列表框仅显示每个值一次,但是如果将它们添加到图表中,则会得到21个,我希望这是您想要的答案(如果保留唯一性,则为10个,因为它已转储重复的行)
如果您希望能够在前端看到line的数据线,则必须为其提供唯一的标识符,如下所示:
T2:
LOAD * Inline [
G1, G2,G3
a, 1,1
a, 2,2
b, 3,3
c, 4,4
];
T2:
LOAD DISTINCT * Inline [
G1, G2,G3
a, 1,5
b, 3,6
b, 3,7
c, 4,8
];
这将为您提供:(外观相同)
但现在您可以执行以下操作:(相同的答案,但您可以将行拆分开)
这是因为Qlik引擎始终尝试聚合相同的内容。宁愿说“我有3个选项a”,也不愿写出3次选项,因此您必须强迫它不要让那是您想看到的。但是无论您希望看到什么,数据仍将正确存储。
如果您不介意唯一标识符是任意的并且随着数据的变化而易于更改,那么使用第二种方法的巧妙方法是:
T2:
LOAD rowno() as G3, * Inline [
G1, G2
a, 1
a, 2
b, 3
c, 4
];
T2:
LOAD DISTINCT rowno() as G3, * Inline [
G1, G2
a, 1
b, 3
b, 3
c, 4
];
关于mysql - QlikView内联代码格式,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36366961/