2012-01-11 2 views
3

내가 SQL 문있어 두와 MySQL의 쿼리 : 나는 낮은 (scr.classification)를 추가경우 또는 어디에 mysql을 - 절

$sql =" SELECT DISTINCT 
      scr.* 
     FROM scr 
      LEFT JOIN `users` ON `users`.user_id=scr.user_id 

     WHERE $email_filter LOWER(scr.genre) LIKE '%$search_word_fix%' **HERE** $psez protage $wwc $prevoption $locatio $rats $rat1 $rat2 $rat3 $rat4   
     GROUP by scr.sp_name 
     ORDER BY scr.grade DESC"; 

"여기"에서 '% 1 $의 search_word_fix %의' 등이 올바른 결과를 표시하지 않습니다. (scr.genre = "searchkeyword"및 다른 필터는 여기에서) OR (여기서 scr.classification = "searchkeyword"및 기타 필터)

+0

네 그룹 순서에

사용 parans을 단지 지정 "또는"을 "과"있다, 당신은'AND' 또는'의 조건 사이의'OR' 필요 조항. – FrustratedWithFormsDesigner

+1

귀하의 스크립트를 모르겠습니다. 그러나 쿼리에 전달하기 전에 모든 사용자 입력을 위생적으로 처리하십시오. – TimWolla

+1

mysql_real_escape_string! 그걸 써! – Halcyon

답변

7

Where는 한 번만 지정하십시오. 추가 조항이 작업

where (scr.genre = "searchkeyword" and other filters here) 
OR (scr.classification ="searchkeyword" and other filters here) 
+0

예 완벽하게 감사했습니다. – cppit