আমি এই প্রশ্নোত্তর জুড়ে এসেছি যা আমাকে এটি সমাধান করতে সহায়তা করেছিল যে কেন আমি আর্কপাই অনুসন্ধান কার্সারের এমন একটি ধারা ব্যবহার করতে অক্ষম ছিল যা কার্সারকে কেবলমাত্র সেই রেকর্ডগুলিতে সীমাবদ্ধ রাখতে পারে যা _
নির্দিষ্ট পাঠ্য ক্ষেত্রে একটি আন্ডারস্কোর ( ) অন্তর্ভুক্ত করে।
আমি যখন এটি পেয়েছি ততক্ষণে আমি সমস্যাটি চিত্রিত করার জন্য ইতিমধ্যে একটি কোড স্নিপেট তৈরি করেছি, সেই প্রচেষ্টাটি নষ্ট করার পরিবর্তে, আমি এর সমাধানটি যুক্ত করেছি এবং সম্ভবত একই সমস্যার সাথে ভবিষ্যতের দর্শকের সহায়তার জন্য এটি এখানে পোস্ট করছি।
পরীক্ষাটি একটি ফাইল জিওডাটাবেস ব্যবহার করে এবং ডেস্কটপের জন্য আর্কজিআইএস 10.2.2 এ চালিত হয়েছিল।
import arcpy
arcpy.CreateFileGDB_management(r"C:\Temp","test.gdb")
arcpy.CreateFeatureclass_management(r"C:\Temp\test.gdb","testFC")
arcpy.AddField_management(r"C:\Temp\test.gdb\testFC","testField","Text")
cursor = arcpy.da.InsertCursor(r"C:\Temp\test.gdb\testFC",["testField"])
cursor.insertRow(["ABCD"])
cursor.insertRow(["A_CD"])
cursor.insertRow(["XYZ"])
cursor.insertRow(["X_Z"])
del cursor
where_clause = "testField LIKE '%C%'"
print("Using where_clause of {0} to limit search cursor to print any values containing the letter C:".format(where_clause))
with arcpy.da.SearchCursor(r"C:\Temp\test.gdb\testFC",["testField"],where_clause) as cursor:
for row in cursor:
print(row[0])
print("This is the expected result :-)")
where_clause = "testField LIKE '%_%'"
print("\nUsing where_clause of {0} to limit search cursor to print any values containing an underscore (_):".format(where_clause))
with arcpy.da.SearchCursor(r"C:\Temp\test.gdb\testFC",["testField"],where_clause) as cursor:
for row in cursor:
print(row[0])
print("This is not what I was hoping for :-(")
where_clause = "testField LIKE '%$_%' ESCAPE '$'"
print("\nUsing where_clause of {0} to limit search cursor to print any values containing an underscore (_):".format(where_clause))
with arcpy.da.SearchCursor(r"C:\Temp\test.gdb\testFC",["testField"],where_clause) as cursor:
for row in cursor:
print(row[0])
print("This is what I was hoping for :-)")
আউটপুটটি হ'ল:
>>>
Using where_clause of testField LIKE '%C%' to limit search cursor to print any values containing the letter C:
ABCD
A_CD
This is the expected result :-)
Using where_clause of testField LIKE '%_%' to limit search cursor to print any values containing an underscore (_):
ABCD
A_CD
XYZ
X_Z
This is not what I was hoping for :-(
Using where_clause of testField LIKE '%$_%' ESCAPE '$' to limit search cursor to print any values containing an underscore (_):
A_CD
X_Z
This is what I was hoping for :-)
>>>
\
- আমি বিশ্বাস করি এটি ওরাকল-এর ক্ষেত্রেও তাই, তাই আপনি\_
আন্ডারস্কোরের জন্য অনুসন্ধান করতে চান তবে আপনি এটি অনুসন্ধান করতে চান d