如何选择多个like和其他条件mysql

时间:2015-11-05 08:16:24

标签: mysql

美好的一天,我是一名新手程序员。我想问一下我的代码有什么问题?我希望先生/女士在名字,中间名和姓氏中用字母“a”查看用户,状态等于1,而usertype不等于单词“Admin”。

下面的代码显示了其他用户记录,甚至是usertype是Admin。先生,请帮帮我。

这是我的代码:

SELECT * FROM users WHERE usertype != 'Admin' AND firstname LIKE '%a%' OR middlename LIKE '%a%' OR lastname LIKE '%a%' AND userstatus = '1' 

请帮帮我。我在这里看到一些使用多个喜欢的帖子,抱歉,如果我的英语太差了。谢谢你

2 个答案:

答案 0 :(得分:3)

我假设您要对LIKE语句进行分组。您可以使用括号,如下所示:

SELECT * FROM users 
WHERE usertype != 'Admin' 
AND (
    firstname LIKE '%a%' 
    OR middlename LIKE '%a%' 
    OR lastname LIKE '%a%'
)
AND userstatus = '1' 

或者按照你想要的方式放置它们。但是我会建议你阻止这样的声明,因为它可能会变得非常糟糕,特别是当野生人物都在两边时。但我认为这只是一个例子。

编辑:请参阅here获取小提琴。

答案 1 :(得分:1)

SELECT * FROM users WHERE usertype != 'Admin' AND (firstname LIKE '%a%' OR middlename LIKE '%a%' OR lastname LIKE '%a%') AND userstatus = '1'