QGISモデルデザイナー-複数のフィールドパラメーターを持つ属性で選択

Dec 04 2020

「属性による選択」アルゴリズムを含むモデルを構築しており、値がモデル入力と一致する複数のフィールドで選択しようとしています。

基本的に、選択クエリを「field1 = input AND field2 = input」にします。

ツールチップとこの質問(Modelbuilderで複数のフィールドを選択)に基づいて、複数のフィールドパラメーターで選択するための構文はfield1; field2:である必要があると思います。

ただし、これは属性による選択ツールでは機能しません。[OK]をクリックすると、ダイアログボックスが閉じて[選択属性]フィールドがクリアされます。

属性による選択ツールに別の構文がありますか、それともこれは不可能ですか?モデルに2つの「属性による選択」アルゴリズムを設定し、現在の選択内で選択することで、今のところ回避できます。QGISバージョン3.16を使用しています。

回答

Babel Dec 06 2020 at 23:07

この関数では、ここで2つのフィールドを同時に入力することはできません。この関数select by attributeは、ツールボックスからスタンドアロンで実行した場合、選択属性に対して可能な入力が1つだけあります。そのために設計されていないため、モデルでそれ以上の入力を受け入れることはないと思います。

リンクした質問には、オプションの複数形からわかるように、複数の入力フィールドを選択する機能が組み込まれているようです。-Dissolve field(s)そして、それは本当に理にかなっています。

ただし、select by属性を使用すると、次のような単数形しかありませんSelection attribute

2つの入力フィールドがある場合、QGISはこれらの2つのフィールドがどのように組み合わされているかを知るための追加の可能性を必要とします:field_1 = School_Code AND field_2 = School_Code?というか:(field_1 OR field_2)= School_Code?

したがって、最善のオプションはselect by attribute2回実行することだと思います。またはselect by expression、複雑な式を自由に定義できる場所で試すこともできます。