2012-08-22 35 views
0

我有一個excel文件,有4個字段:a,b,c,key。 我需要檢查QV腳本,每行a,b,c只有一個鍵。 具有不同鍵的行應該是結果。 例如,這是一個不正確的情況,我需要趕上:qlikview語法 - uniq鍵

key | c | b | a

111 | test3 | test2 | test1

222 | test3 | test2 | test1

任何人都有一個想法如何在qlikview中完成?

謝謝, Lena。

回答

0

有趣的問題。我建議將列c + b + a作爲組合鍵並對每個組合鍵的字段key中的唯一值數進行計數。下面是做到這一點(QlikView腳本)的一種方法:

DATA: 
LOAD key, c, b, a 
FROM some_file.xls; 

LEFT JOIN(DATA) 
LOAD c, b, a, COUNT(DISTINCT key) AS key_count 
RESIDENT DATA 
GROUP BY c, b, a; 

你的數據模型,現在有一個名爲key_count第5列。您現在可以在圖表或列表框中使用key_count,或者使用另一個具有WHERE子句的LOAD語句來過濾key字段中具有2個或更多值的行。爲了擴大對您的樣本數據:

key | c | b | a | key_count 
111 | 3 | 2 | 1 | 2 
222 | 3 | 2 | 1 | 2 
333 | 4 | 3 | 2 | 1 
444 | 5 | 4 | 3 | 1 

在列表框或LOAD語句,你現在可以輕鬆地在那裏key_count > 1找到行。我希望這有幫助!