Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/191.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android SQLite类转义通配符_Android_Sqlite_Android Sqlite - Fatal编程技术网

Android SQLite类转义通配符

Android SQLite类转义通配符,android,sqlite,android-sqlite,Android,Sqlite,Android Sqlite,在Android Jellybean 4.1上,是否有可能转义一个类似的通配符,而仍然使用索引 使用: 与之相反: 转义通配符在Android上有效吗?如果通配符被转义,它还会使用索引吗 我目前正在做的是: where field like 'xyz_abc' and lower(field) = lower('xyz_abc') 由于使用了通配符,因此效率极低 谢谢您需要使用ESCAPE子句: where field like 'xyz\_abc' escape '\' 请参阅SQLite

在Android Jellybean 4.1上,是否有可能转义一个类似的通配符,而仍然使用索引

使用:

与之相反:

转义通配符在Android上有效吗?如果通配符被转义,它还会使用索引吗

我目前正在做的是:

where field like 'xyz_abc' and lower(field) = lower('xyz_abc')
由于使用了通配符,因此效率极低


谢谢

您需要使用
ESCAPE
子句:

where field like 'xyz\_abc' escape '\'

请参阅SQLite文档中的部分。

请查看该部分,它可能会对您有所帮助!如果您不想将
\uuu
作为通配符,那么像'xyz\u abc'这样的
字段应该是
字段='xyz\u abc'
<如果没有至少一个通配符,code>LIKE
就没有用处。谢谢,但该列在INSTIVE中是大小写的。源数据可以是任何情况,例如“Xyz_abc”或“Xyz_abc”,但列中只有一个更低的(“Xyz_abc”)。我试图避免编写补丁版本来修改数据库,将所有内容转换为小写。
where field like 'xyz_abc' and lower(field) = lower('xyz_abc')
where field like 'xyz\_abc' escape '\'