0
などの条件に基づいて既存のスキーマからレコードを生成したいとします。私は何かをしたいのですPig Latinで投影中の条件に基づいてレコードを生成する
A = load 'data' using PigStorage() as (f1:int, f2:int);
B = foreach A generate (f1 == 0 ? null : A);
これを行うには適切な方法はありますか?
などの条件に基づいて既存のスキーマからレコードを生成したいとします。私は何かをしたいのですPig Latinで投影中の条件に基づいてレコードを生成する
A = load 'data' using PigStorage() as (f1:int, f2:int);
B = foreach A generate (f1 == 0 ? null : A);
これを行うには適切な方法はありますか?
A = load 'data' using PigStorage() as (f1:int, f2:int);
B = filter A by f1 != 0 ;
"generate"レコードとはどういう意味ですか?構文に基づいて、新しいレコードを生成しないようにしました。 Aのすべてのレコードをループしてbincondを適用するだけです。あなたはbincondでAを参照することはできません。あなたはそれを(f1 == 0?null:f1)のようなものに切り替えるといいでしょう。その場合は、代わりにFILTERを使用することもできます。 – NerdyNick