爲什麼此查詢返回與我的OR LIKE
條件匹配的所有行並跳過doctorLang
。 city
。我的意思是我得到所有城鎮中的所有行,而不是僅在某個行中。查詢返回所有行
SELECT `doctor`.`id`, `doctorLang`.`first_name`, `doctorLang`.`second_name`, `doctorLang`.`city`, `doctorLang`.`hospital_name`
FROM `doctor` LEFT JOIN `doctorLang` ON `doctor`.`id`=`doctorLang`.`doc_id`
WHERE `doctorLang`.`city`='Пловдив'
AND `doctorLang`.`language`='bg'
AND `doctor`.`active`=1
AND `doctorLang`.`first_name` LIKE '%йло'
OR `doctorLang`.`first_name` LIKE '%йло%'
OR `doctorLang`.`first_name` LIKE 'йло%'
OR `doctorLang`.`second_name` LIKE '%йло'
OR `doctorLang`.`second_name` LIKE '%йло%'
OR `doctorLang`.`second_name` LIKE 'йло%'
OR `doctorLang`.`third_name` LIKE '%йло'
OR `doctorLang`.`third_name` LIKE '%йло%'
提供您的樣品輸入 - 輸出... –
因爲你沒有使用禁忌。古典錯誤。 – fancyPants
['AND'運算符](https://dev.mysql.com/doc/refman/5.7/en/operator-precedence.html)的優先級高於['OR'運算符](https:// dev .mysql.com/DOC/refman/5.7/EN /運營商precedence.html)。爲此指責數學。 – axiac