1

次のような 2 つのテーブルがあります。

Table1:
LOAD * INLINE [
OrderItem
OI1
OI2
OI3
OI4
OI6
];

Table2:
LOAD * INLINE [
OrderItem
OI2
OI3
OI4
OI5
OI6
];

ここで、 OI5だけが "Table1" にないことを示す 3 番目のテーブルが必要です! Listbox ソリューションも問題ありません。

ジョインビットでいくつか試してみましたが、うまくいきませんでした。私もこれを読みまし たが、リストボックス内の2つのテーブルの違いしか示していませんでした。下記参照:

Table1:
LOAD * INLINE [
OrderItem
OI1
OI2
OI3
OI4
OI6
];

Concatenate(Table1)
Table2:
LOAD * INLINE [
OrderItem
OI2
OI3
OI4
OI5
OI6
];

INNER JOIN (Table1)
LOAD *
WHERE "Only in One Table?"
;

// Here I want "OI5" as an output
Difference:
LOAD 
    OrderItem,
    if(count(OrderItem)<2,-1) as "Only in One Table?"   
RESIDENT Table1 GROUP BY OrderItem
;

結果:

ここに画像の説明を入力

ありがとう!

4

2 に答える 2

3

考えられる解決策の 1 つ:

Table1:
LOAD * INLINE [
OrderItem1
OI1
OI2
OI3
OI4
OI6
];

Table2:
LOAD * INLINE [
OrderItem2
OI2
OI3
OI4
OI5
OI6
];

Missings:
Load 
    OrderItem2 as MissingsOrderItem
Resident 
    Table2
Where
    Not Exists(OrderItem1, OrderItem2)  
;   

リロード後の結果は次のようになります。

ここに画像の説明を入力

于 2016-07-15T12:36:55.070 に答える