เลือก layer by attribute โดยใช้คำสั่ง SQL LEN () ใน ArcMap?


9

ฉันต้องการสอบถามความยาวของคอลัมน์สตริงและคิดว่าจะใช้:

LEN([ColumnName]) > 5

อย่างไรก็ตามนั่นไม่ได้ผลเลย ฉันกำลังสอบถามตารางใน fGDB ใน ArcMap 10.1 ดังนั้นสัญกรณ์ของ [ColumnName]

มีคนช่วยฉันได้ไหม

ข้อความแสดงข้อผิดพลาดที่ฉันได้รับจาก ArcGIS คือฉันกำลังใช้คำสั่ง SQL ที่ไม่ถูกต้อง

คำตอบ:


17

ในการคำนวณความยาวเป็นอักขระของนิพจน์สตริงให้ใช้ CHAR_LENGTH(string_exp)

ตัวคั่นชื่อฟิลด์สำหรับฐานข้อมูลไฟล์เป็นเครื่องหมายคำพูดคู่ (ไม่ใช่วงเล็บเหลี่ยม)

ดังนั้นควรใช้งานได้:

CHAR_LENGTH(“ColumnName“) > 5

นี่คือการอ้างอิง SQL สำหรับการแสดงออกแบบสอบถามที่ใช้ใน ArcGIS


1

จะเกิดอะไรขึ้นถ้าคุณเพิ่มเขตข้อมูลใหม่ลงในตารางของคุณที่เรียกเช่น "str_length" จากนั้นเติมฟิลด์ด้วยความยาวของค่าของเขตข้อมูลที่คุณต้องการ

str_length = len(columnname)

จากนั้นทำการเลือกในฟิลด์คำนวณใหม่

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.