2012-06-29 2 views
1
$line = @mysql_query("SELECT * FROM clips, userclips 
WHERE userclips.userid='$id' AND 
userclips.clipid=clips.id ORDER BY clips.title"); 

특정 사용자와 관련된 모든 클립을 반환합니다. 그러나 나는 정확한 반대를 질의 할 쿼리를 작성하는 것을 혼란 스럽다. 해당 사용자와 관련이없는 모든 클립을 선택하십시오.PHP MYSQL 반대 선택

나는 이것을 시도 :

해당 사용자와 관련이없는 클립을 반환하지
$line = @mysql_query("SELECT DISTINCT * FROM clips, userclips 
WHERE userclips.userid!='$id' AND userclips.clipid=clips.id ORDER BY clips.title"); 

그러나 그것은 모든 사용자와 연관되지 않은 클립이 골대를 벗어났습니다. 당신이

+2

mysql_ * 함수를 사용하지 말고 조사해야합니다. 최소한 PDO 또는 mysqli_ *로 이동하십시오. – Leigh

+0

특정 클립 또는 사용자와 관련되지 않은 모든 클립을 반환 하시겠습니까? –

+1

응답 한 모든 사람 덕분에, 처음으로 stackoverflow를 사용하여 모든 도움이되는 응답에 압도당했습니다. 모두에게 감사드립니다. :) – user1491119

답변

1
$line = @mysql_query("SELECT DISTINCT * FROM clips WHERE clips.id 
NOT IN (SELECT clipid FROM userclips WHERE userid='$id') ORDER BY clips.title"); 
+0

브릴리언트, 정확히 내가 너에게 고마워했다. – user1491119

0

내가 id가

Select * 
From clips 
Where id NOT IN (SELECT clips.id 
        FROM clips, userclips 
        WHERE userclips.userid = '$id' 
        AND userclips.clipid = clips.id 
        ORDER BY clips.title) 
1

반환은 모든 클립 및 사용자 정보가 특정 사용자와 관련이없는 쿼리 이런 종류의, 아니에 사용하는 것이다 :)를 할 수있는 경우

는 제발 도와주세요 전달됨

SELECT * FROM clips, userclips 
WHERE userclips.userid!='$id' 
ORDER BY clips.title