Android 带空格的SQLite通配符%
对于下面的查询,如何将2个LIKE运算符连接为1 从名为“abc%”或名为“%abc%”的学生中选择*Android 带空格的SQLite通配符%,android,sqlite,Android,Sqlite,对于下面的查询,如何将2个LIKE运算符连接为1 从名为“abc%”或名为“%abc%”的学生中选择* 请注意“abc”之前的second like运算符中%通配符后的“”空格。对于大多数数据库,like运算符的模式匹配非常有限(特别是如果您习惯于正则表达式类型的模式匹配)。据我所知,SQLite就是符合这种描述的。没有一个像模式这样的人可以做您描述的事情。只要确保所有字符串都有该空间: SELECT * FROM students WHERE ' ' || name LIKE '% abc%'
请注意“abc”之前的second like运算符中%通配符后的“”空格。对于大多数数据库,
like
运算符的模式匹配非常有限(特别是如果您习惯于正则表达式类型的模式匹配)。据我所知,SQLite就是符合这种描述的。没有一个像模式这样的人可以做您描述的事情。只要确保所有字符串都有该空间:
SELECT * FROM students WHERE ' ' || name LIKE '% abc%';
SQLite3确实支持REGEXP
,尽管它需要一个用户定义的函数,这在Android上是不可能的。因此,您当前的查询可能是您所能做的最好的查询。SQLite3支持REGEXP
,它可以在一个表达式中处理OP的逻辑,但遗憾的是,这在不支持用户定义函数的Android上是不可能的。是的,我只是把注意力集中在了问题上。从实际的角度来看,这是一个更好的答案。