当我在android sql中使用LIKE查询时,我想要“包含”关于某些输入的查询。
db.query(TABLE,
new String[]{COLUMN},
CONDITIONS + " LIKE " + "?",
new String[]{("%" + input + "%")},
null
null
ORDER_COLUMN + " DESC",
null);
查询运行良好,但是当我在输入中使用'%'字符时,它就像空字符串一样工作。
我想使用像普通字符串一样的'%'字符。
我该怎么办??
感谢。
答案 0 :(得分:2)
使用LIKE y ESCAPE z
表单为LIKE表达式指定转义字符,然后使用该转义字符为LIKE表达式中任何需要按字面意义取值的sqlite> create table t(a);
sqlite> insert into t values('a%b');
sqlite> insert into t values('ab');
sqlite> insert into t values('aa%bb');
sqlite> select * from t where a like '%a\%b%' escape '\';
a%b
aa%bb
作为前缀。例如:
<div ng-repeat="subItems in items">
<div ng-repeat="subSubItems in subItems">
<div ng-repeat="subSubSubItems in subSubItems">
<input type="text" ng-model="subSubSubItems" />
</div>
</div>
</div>