2016-09-30 100 views
0

我有一張表,我試圖與自己匹配並在主鍵不匹配時創建一條記錄。下面是我想獲得下表Spotfire加入無與倫比的記錄

Location Value Location(2) Value(2) 
A   5  B  10 
A   5  C  15 
B   10  A  5 
B   10  C  15 
C   15  A  5 
C   15  B  10 

我已經複製了第一個表,並嘗試了各種連接,但我不能得到的結果表

Location Value 
A  5 
B  10 
C  15 

的例子。任何人都可以提供一個關於如何執行的建議嗎?

+0

@ cookiemnstr247-是主鍵「位置」?另外,通過將表與自身進行匹配,你的意思是什麼?你能解釋更多嗎? – ksp585

+0

這是正確的,位置是主鍵。我的意思是我把我的初始表,重複它,然後嘗試'插入' - >'列',匹配位置字段,並嘗試每個連接方法,使用同一個表的兩個實例。 – cookiemnstr247

回答

2

看起來像你想要的矢量產品,即外連接。但要建立連接,您需要一個行匹配的列。這裏的一個竅門是創建一個只有一個值的新列,如所有行的「1」(使用「插入計算列」 - 確保凍結列以便稍後加入)。然後,使用具有該虛擬列的列作爲關鍵字段,對該表進行完整外部連接,併爲其自身創建一個副本(使用「插入列」功能進行連接)。然後,您將獲得上面顯示的組合,但它也會有行匹配的行。

要刪除的比賽,你可以很容易地創建一個表達式測試一個新列,如果主鍵匹配,如:

if([Location]=[Location(2)],"Match","NoMatch") 

然後篩選到匹配的行刪除,如果你不希望他們數據集。

你當然可以問Spotfire中的問題在這裏,但你也可以試試這裏的TIBCO共同體的Spotfire部分:

https://community.tibco.com/products/spotfire

+0

非常酷,謝謝! – cookiemnstr247

+0

爲什麼你不能加入哪裏1 = 1或列<> colimn2? – scsimon