SQLite3 SELECT WHERE子句帮助

时间:2011-08-21 20:39:57

标签: sqlite

我有一张桌子:

CREATE TABLE "feeds" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
"md5"   varchar(32),
"title" varchar(255));
CREATE INDEX "index_feeds_on_md5" ON "feeds" ("md5");

当我跑步时:select id, title, md5 from feeds WHERE feeds.title = 'Authors Audio';

它返回:

id|title|md5
99|Authors Audio|5db86b5899889e0ea49b0ab7ff6223f0

当我跑步时:select id, title, md5 from feeds WHERE feeds.md5 = '5db86b5899889e0ea49b0ab7ff6223f0';

它什么都不返回。

为什么呢? 列名md5是SQLite3中的保留字吗?根据:http://www.sqlite.org/lang_keywords.html md5不是SQLite中的保留字。

1 个答案:

答案 0 :(得分:0)

尝试回复查询中的字段名称。

select `id`, `title`, `md5` from `feeds` WHERE `feeds`.`md5` = '5db86b5899889e0ea49b0ab7ff6223f0'

这将有助于区分您的表结构,以便您不会遇到诸如此类的问题。