私は次のクエリを持っています:
'SELECT * FROM posts LEFT JOIN taxi ON taxi.taxiID = posts.postID
WHERE (taxi.value = 1 AND taxi.userID ='.$userID.')
AND ??????????????
ORDER BY taxi.ID DESC
LIMIT 10'
サイトの仕組みは、ユーザーが投稿に「いいね」のタグを付けることができることです。投稿が高く評価されると、タクシーテーブルに新しい行が与えられます。taxiIDはpostIDと同じで、userIDは投稿を高く評価したユーザーを格納し、value1に設定されます。投稿を嫌うvalueと0に設定されます。
valueが1で、userIDが$userID-チェックのすべての投稿を表示したい。ただし、ユーザーがまだ投稿を高く評価していないすべての投稿をクエリに表示することも必要です。ユーザーがまだ投稿を高く評価していない場合はuserID、NULL対応するvalueが。になりNULLます。それを照会すると、他のユーザーが気に入ったが、ユーザーが気に入っていない投稿はスキップされます。
表は次のtaxiとおりです。
ID taxiID userID value
1 1 1 1
2 1 6 1
3 1 4 0
4 2 1 0
5 2 6 1
6 2 4 0
7 3 6 1
8 3 4 0
1であると仮定する$userIDと、私のクエリはtaxiID1と3を表示するはずです(ユーザー1がID1を好きで、3を好きまたは嫌いではなかったため) taxiID。
私が投稿したコードでは、taxiID1のみが表示されます。
問題は、上記で与えられるはずのクエリの欠落している行は何ですか?