Mysql查询解决方案
亲爱的朋友们我有一张桌子(code_bit_table),里面有文章商店。每篇文章都有SUBJECT,然后每篇文章都有TITLE和TAGS。我希望根据标题或标签字段中的任何字母来搜索表格,但要在单个主题中搜索表格。例如,我想只搜索PHP,并在PHP中,我想检查TITLE或TAGS字段是否包含一些文本(如数组)。Mysql查询解决方案
问题是我的查询返回其他主题。这可能是一个非常简单的问题,但一直困扰我很多
SELECT * FROM code_bit_table WHERE `subject` = 'PHP' AND `tags` LIKE '%text%' OR `title` LIKE '%text%'
查询工作正常,但为什么它返回其他学科如jQuery等也出现在同一个表。
括号是你的朋友。
SELECT *
FROM code_bit_table
WHERE `subject` = 'PHP'
AND (`tags` LIKE '%text%'
OR `title` LIKE '%text%'
)
SELECT * FROM code_bit_table WHERE `subject` = 'PHP' AND (`tags` LIKE
'%text%' OR `title` LIKE '%text%')
谢谢主席先生,我认为这是它..感谢了很多 – 2012-08-01 11:38:41
你必须把开闭括号 '(' & ')' 为OR
部分覆盖AND
运营商作为优先:
SELECT *
FROM code_bit_table
WHERE `subject` = 'PHP' AND
(`tags` LIKE '%text%' OR `title` LIKE '%text%');
谢谢主席先生,我认为这是它..感谢了很多 – 2012-08-01 11:45:37
你必须组tags
和title
。
SELECT *
FROM code_bit_table
WHERE `subject` = 'PHP' AND
(`tags` LIKE '%text%' OR
`title` LIKE '%text%');
谢谢先生,我认为这是它..非常感谢 – 2012-08-01 11:45:59
谢谢主席先生,我认为这是它..感谢了很多 – 2012-08-01 11:46:22