2016-08-29 3 views
0

세 개의 카테고리 & 하위 카테고리가 있습니다. 카테고리 (모험, 회춘, 음식) 및 sub_category (공기, 풍선 등) MySQL 쿼리가 정확한 출력을 얻지 못합니다.

는 지금은
select * from products where sub_category Like '%Air%' or 
sub_category Like '%Land%' and category = 'adventure' 
and type = 'experience' and status = 'active' 

쿼리

아래로 발사하고 지금 문제는 또한 행 위치를 카테고리 = 회춘을 받고있다.

select * from products where (sub_category Like '%Air%' or 
sub_category Like '%Land%')and category = 'adventure' 
and type = 'experience' and status = 'active' 
+0

"% ..."'는 인덱스를 사용할 수 없으므로 어떤 방법 으로든이를 피할 수 있다면 훨씬 더 좋습니다. – Strawberry

답변

4

어디 따라서 만 결과를 얻을 것이다. 그래서 검색어가 Air와 같은 하위 카테고리가있는 모든 것을 반환하는 이유입니다. 다음과 같이 쿼리를 업데이트해야합니다 :

0

AND OR보다 우선 : 카테고리 = 모험 당신은 나 문을 arround 괄호를 사용할 필요가

관련 문제