回答:
仮想レイヤーを使用できます。ShapefileをQGISにロードし、次に進みLayer / Add Layer / Add-Edit Virtual Layerます。必要なSQLを入力します。
たとえば、シェープファイルに名前が付けられmyshp、属性がある場合、次のようにtestクエリできます。
select * from myshp a
where a.test = 1234;
または、geometryフィールドを使用して空間クエリを実行できます。
select * from myshp
where st_intersects(geometry, make_point(1,2));