タグ付けされた質問 「where-clause」

5
arcpy.Select_analysis()のwhere句に変数を含めますか?
シェープファイルをループして、各機能を順番に選択し、それを一時的なシェープファイルにコピーして、ユニオン分析に含めようとしています。カーソルを使用して、可変の「名前」に設定している各機能のID名を見つけています。この変数をarcpy.Select_analysisのwhere句の一部として使用しようとすると、エラーが発生します。 ExecuteError:ERROR 999999:関数の実行エラー。無効なSQLステートメントが使用されました。無効なSQLステートメントが使用されました。実行に失敗しました(選択)。 私が使用しているコードは次のとおりです。 Name = 101 where = "\'\"StudyID\" = \\'"+str(Name)+"\\'\'" arcpy.Select_analysis("C:\\input.shp", "C:\\output.shp", where) 変数を使用せずに入力した場合: arcpy.Select_analysis("C:\\input.shp", "C:\\output.shp", '"StudyID" = \'101\'') それはうまくいきます 変数をsqlステートメントに合わせるために何をする必要がありますか?

3
Pythonリストにある場合、属性によって機能を選択しますか?
Pythonで属性による選択を完了しようとしていますが、属性がリストに存在するかどうかのクエリに基づいています。 そのような最も単純なクエリは、次のようになります。 qry = " \"OBJECTID\" in oid_list" arcpy.SelectLayersByAttribute_management(inft, "NEW_SELECTION", qry) しかし、そのアプローチは無効な式エラーを返します。 過去には、このタイプのクエリには、次のようなより複雑な構文を使用する必要がありました。 sqlQuery2 = "nid in (" + ','.join(["'"+x+"'" for x in delta_list]) +")" しかし、このスニペットの適応も私にとってはうまくいかないようです。 "OBJECTID_1 in (" + ','.join(["'"+str(x)+"'" for x in oid_list]) +")" ここで何が欠けていますか?
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.