【发布时间】:2010-09-08 23:24:28
【问题描述】:
我正在为网站开发搜索功能。我有一个名为关键字的表,其中包含两个字段 id 和关键字。我有两个独立的 AND 和 OR 搜索查询。问题在于 AND 查询。它没有返回我期望的结果。
打印出来的SQL是:
SELECT COUNT(DISTINCT tg_id)
FROM tg_keywords
WHERE tg_keyword='keyword_1'
AND tg_keyword='keyword_2'
返回的计数为 0,而如果我使用 OR 而不是 AND 执行相同的 SQL,则返回的计数为 1。我预计两种情况下的计数都是 1,我需要它作为 AND 结果将优先于 OR 结果。
任何建议将不胜感激。
谢谢 阿奇
【问题讨论】:
-
如果
str1 != str2,这种情况field=str1 AND field=str2永远不会发生。因此,您将始终得到 0 个结果。