SQL 请达人看看这个并列查询完整否

来源:百度知道 编辑:UC知道 时间:2024/09/20 17:31:41
SELECT * FROM `a_aaa` where (body like '%垃圾%' or body like '%删除%' or body = '') and body not like '%原创%' and body not like '%官方%' and typeid != 85 and typeid != 50 and typeid != 87

例如 执行上面的查出10条
而分开查询责可以查出10多条,是不是语句哪里不完整
有的内容查不到
你好 我是想实现 满足前面其中任何一条 然后 不等于指定的ID(因为这几个ID栏目不要查询)

所以 and 连接

有没有办法能够 在我上面的基础上实现 前半部分满足任何一条即可,然后用typeid =!再过滤一次

完成给您追加 谢谢

分开查询当然会多出记录,这是必然的。
原因如下:
and是并列的结果,所有条件都得满足。
分开后只要满足其中一个就出结果,比如:
body like '%垃圾%' typeid =85 的数据分开就能查出来,合到一起就不能查出来,自然是要少数据了。

补充:
SELECT * FROM `a_aaa` where (body like '%垃圾%' or body like '%删除%' or body = '' or body not like '%原创%' or body not like '%官方%') and typeid != 85 and typeid != 50 and typeid != 87

试试吧.
---
以上,希望对你有所帮助。

SELECT * FROM `a_aaa` where (条件一 or 条件二 or 条件三 )and
typeid not in ('85','50','87')
效率不是很高~~!