我在 mytable 中有一行,'{1> 中的'{“test”:“Hello World”} 。
如果我用
搜索数据库SELECT *
FROM mytable
WHERE column1 LIKE '%Hello World%'
我一无所获。如果我将查询更改为
SELECT *
FROM mytable
WHERE column1 LIKE '%Hello%'.
我得到了结果,但这不是我想要的,因为这会返回不需要的行。
两个单词之间的空格字符有问题吗?
我的代码如下所示:
Cursor cursor=db.rawQuery("SELECT * FROM mytable WHERE column1 LIKE '%Hello World%'",null);
if(cursor.moveToFirst()) {
while(cursor.moveToNext()) {
//log results
...
}
}
答案 0 :(得分:1)
if(cursor.moveToFirst()) {
while(cursor.moveToNext()) {
像这样的代码会跳过第一行。相反,这样做:
if (cursor.moveToFirst()) {
do {
//...
} while (cursor.moveToNext());
}
答案 1 :(得分:0)
首先
SELECT * FROM mytable WHERE column1 LIKE '%Hello World%'
在SQLite数据库浏览器(http://portableapps.com/apps/development/sqlite_database_browser_portable)中为我工作。
您也可以使用修剪功能: