具有不同条件的mysql中的LIKE函数

Akr*_*ram -1 mysql sql

嗨,大家好我有问题

我有这个问题:

SELECT * FROM useraccount
WHERE
  (FirstName LIKE '%a%') OR
  (LastName LIKE '%a%') AND
  (Company = '131') AND
  (Type = '4') 
GROUP BY ID
Run Code Online (Sandbox Code Playgroud)

但它没有按我的意愿运作.例如,LIKE函数应该是这样的.但必须是131和类型4.它没有采取这两个功能.

Ren*_*Pot 8

您需要在OR零件周围添加一些额外的括号:

WHERE ((FirstName LIKE '%a%') OR (LastName LIKE '%a%')) AND ...
Run Code Online (Sandbox Code Playgroud)

这是因为AND具有更高的优先级(即,之前将进行评估)OR.您可以在手册中的" 运算符优先级"页面上阅读有关此内容的更多信息.