Designer de modelo QGIS - Selecione por atributo com vários parâmetros de campo

Dec 04 2020

Estou construindo um modelo que inclui um algoritmo 'selecionar por atributo' e estou tentando selecionar por vários campos em que o valor corresponde a uma entrada do modelo.

Essencialmente, quero que a consulta de seleção seja 'campo1 = entrada AND campo2 = entrada'

Com base na dica de ferramenta e nesta questão ( Selecione vários campos no Modelbuilder ), acredito que a sintaxe para selecionar por vários parâmetros de campo deve ser field1; field2:

No entanto, isso não está funcionando para a ferramenta de seleção por atributo. A caixa de diálogo fecha e limpa o campo 'Atributo de seleção' quando clico em OK.

Existe uma sintaxe diferente para a ferramenta de seleção por atributo ou isso não é possível? Eu sou capaz de contornar isso por enquanto tendo dois algoritmos 'selecionar por atributo' no modelo e selecionando dentro da seleção atual. Estou usando o QGIS versão 3.16.

Respostas

Babel Dec 06 2020 at 23:07

Você não pode inserir dois campos de uma vez aqui com esta função. A função select by attributetem apenas uma entrada possível para o atributo de seleção quando você a executa de forma independente na caixa de ferramentas. Portanto, acho que ele não aceitará mais entradas no modelo, pois não foi projetado para isso.

A pergunta que você vinculou aparentemente tem a capacidade embutida de selecionar mais de um campo de entrada, como você pode ver na forma plural opcional: Dissolve field(s)- e aí, realmente faz sentido.

Mas com select por atributo, você tem apenas a forma singular: Selection attribute.

Se você tivesse dois campos de entrada, o QGIS precisaria de uma possibilidade adicional para saber como esses dois campos são combinados: field_1 = School_Code AND field_2 = School_Code? Ou melhor: (field_1 OR field_2) = School_Code?

Portanto, acho que sua melhor opção é correr select by attributeduas vezes. Ou você pode tentar select by expressiononde estiver livre para definir expressões complexas.