Untuk kueri SEPERTI standar terhadap kelas fitur ArcSDE berbasis Oracle, karakter garis bawah mewakili wildcard karakter tunggal ketika digunakan dengan string.
Saya mencoba untuk memaksakan kueri definisi untuk menemukan string teks yang dimulai dengan 4 digit diikuti oleh karakter garis bawah.
Adakah yang tahu bagaimana saya akan menentukan karakter garis bawah itu sendiri dalam kueri atau jika / apa karakter pelariannya?
Jawaban MDHald berfungsi untuk file geodatabases tetapi kasus saya khusus untuk Oracle. Salah berasumsi bahwa ArcSDE dan mengajukan permintaan geodatabase akan berfungsi sama untuk kasus ini.
\
- Saya percaya ini juga terjadi dengan Oracle, jadi Anda ingin mencari\_
jika mencari garis bawah.LIKE
(meskipun Anda menyebutkan SEPERTI dalam pertanyaan Anda) -CABLE LIKE '____\_%'
. Saya akan bermain di sini walaupun saya menggunakan SQL Server daripada Oracle sehingga mungkin mendapatkan hasil yang berbedaCABLE LIKE '____\_%' ESCAPE '\'
- dari referensi SQL untuk ekspresi kueri yang digunakan dalam ArcGIS - Bantuan DesktopJawaban:
Berhasil melacak jawabannya.
Anda dapat menentukan karakter ESCAPE dalam kueri seperti:
MY_FIELD SUKA '____ $ _%' ESCAPE '$'
Ini akan mencari tepat 4 karakter diikuti oleh karakter garis bawah plus yang lain setelah itu.
Ditemukan dokumentasi di halaman ini: http://desktop.arcgis.com/en/arcmap/10.3/map/working-with-layers/sql-reference-for-query-expressions-used-in-arcgis.htm
Tidak yakin seberapa jauh ke belakang atau versi apa ini valid untuk tetapi berfungsi untuk ArcGIS Desktop 10.3.
Kutipan dari dokumentasi:
sumber
Anda harus menggunakan CHAR_LENGTH dan SUBSTRING agar ini berfungsi. Itu akan terlihat sebagai berikut:
dimana yourfieldname = nama bidang Anda.
Jangan hapus "" dalam kode. Salin apa adanya dan ganti hanya teks nama belakang Anda.
sumber
Saya menemukan T&J ini yang membantu saya untuk memecahkan mengapa saya tidak dapat menggunakan klausa di mana pada kursor pencarian ArcPy yang dapat membatasi kursor hanya pada catatan yang berisi garis bawah (
_
) dalam bidang teks tertentu.Pada saat saya menemukannya saya sudah mengembangkan potongan kode untuk menggambarkan masalah sehingga, daripada menyia-nyiakan upaya itu, saya telah menambahkan solusinya dan sekarang mempostingnya di sini untuk mungkin membantu pengunjung masa depan dengan masalah yang sama.
Pengujian menggunakan file geodatabase dan dijalankan di ArcGIS 10.2.2 untuk Desktop.
Outputnya adalah:
sumber