【发布时间】:2012-11-30 22:41:03
【问题描述】:
我在 sqlite 中创建了一个名为 AllWords.db 的数据库,其中包含所有英文单词的列表(计数:172820)。当我发出全选查询时,它会返回一个包含所有 172820 个单词的列表。另外,当我像这样打印表格单词的数量时:
SELECT COUNT(*) FROM words;
输出是 172820,所以数据库清楚地包含了所有的单词。但是,当我尝试检查一个单词是否存在(我唯一想要对这个数据库做的事情)时,它不会打印任何东西:
SELECT * FROM words WHERE word="stuff";
什么都不返回。
数据库是一个表,唯一的列是“单词”,所有单词都作为行。任何帮助将不胜感激,谢谢。
【问题讨论】:
-
我认为你确定“stuff”是数据库中的一个词?
-
列的名称是
word还是words? -
如果我的问题的答案是肯定的,那么看看 [SELECT * FROM words WHERE word LIKE '%stuff%'] 是否返回任何内容。
-
我确定“东西”就在那里,因为当我从单词中选择所有内容时它就在输出中。当我尝试使用 like 运算符时,它会返回一堆包含“stuff”的单词,包括“stuff”本身。尾随或前导空格会影响它吗?