Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Verwendung von 'OR' zwischen HAVING und WHERE-Klausel in MySQL?

Setzen Sie einfach alle Bedingungen in den HAVING Klausel.

SELECT [some fields], CONCAT(firstname, ' ', 'lastname') as fullname 
FROM people 
HAVING firstname LIKE '%user_submitted_data%'
OR      lastname LIKE '%user_submitted_data%'
OR      fullname LIKE '%user_submitted_data%

Das WHERE -Klausel könnte Zeilen früh verwerfen, aber da Sie sie erst nach verwerfen können Sie haben die Bedingung für die berechnete Spalte ausgewertet, und das muss warten, bis HAVING , es bringt Ihnen nichts, WHERE zu verwenden .