คำถามติดแท็ก where-clause

5
รวมถึงตัวแปรที่ส่วนของ arcpy.Select_analysis ()?
ฉันพยายามวนลูปผ่าน Shapefile โดยเลือกคุณสมบัติแต่ละอันแล้วคัดลอกไปยัง Shapefile ชั่วคราวเพื่อรวมไว้ในการวิเคราะห์แบบรวม ฉันใช้เคอร์เซอร์เพื่อค้นหาชื่อ ID สำหรับแต่ละคุณสมบัติที่ฉันตั้งค่าเป็น 'ชื่อ' ที่หลากหลาย เมื่อใดก็ตามที่ฉันพยายามใช้ตัวแปรนี้เป็นส่วนหนึ่งของส่วนคำสั่งใน arcpy.Select_analysis ฉันได้รับข้อผิดพลาด: ExecuteError: ข้อผิดพลาด 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.