・"column filter"などのノードの設定ウィンドウで、enforce exclusionとenforce inclusionを選ぶラジオボタンがある。
・基本的に何も弄らずデフォルト(enforce exclusion)を使っていた。
・元のデータが変わる際にエラーの原因になるようなので、忘れないように残しておく。
・例えば、tableから"column filter"でcolumn3を抜き出す場合を考える(下図)。
・includeにcolumn3を持ってきて、その他をexcludeに持ってくる(下図)。
・デフォルトだと"enforce exclusion"が選択されており、このまま実行すれば目的の列抽出ができる。
・このTableであれば良いのだが、もとのTableに、他の列(例えばcolumn4)も含まれていると、目的の処理を行えない(下図)。
・"column filter"を覗いてみると、excludeには先と同じcolumn1とcolumn2が収まっているが、includeにはcolumn3のみならずcolumn4までもが格納されている(下図)。
・enforceのラジオボタンは、要するに、「チェックが入っている処理を優先しますよ」ということで、今回であれば、「(column3の抽出ではなく)column1とcolumn2の除外を優先しますよ」ということになるらしい。
・ここを理解していないと、列の数が変わった際などに、filterが狙い通りに機能しないことになるので、注意が必要。
終わり。