0

「ブラウザ」と「投票」の2つのテーブルがあります。すべてのブラウザと、vote_rankingとuser_idによる投票のみが必要です。投票がないこともありますが、それでもブラウザが必要です。それは私が書いたコードです:

SELECT browsers.*, votes.*
FROM browsers LEFT JOIN votes ON browsers.app_id = votes.app_id
WHERE vote_ranking = '$ranking' AND user_id = $userid or vote_id IS NULL

問題は、投票がない場合(vote_idがNULL)、app_idがNULLに変更されることです。しかし、投票にapp_idがない場合でも、ブラウザーのapp_idを保持する必要があります。

'reがvote_idである行でのみテーブル投票に参加できますか?または私が必要なことをするのに似た何か?

ありがとう

4

1 に答える 1

1

これを試して:

SELECT browsers.*, votes.vote_ranking, votes.user_id
FROM browsers
LEFT JOIN votes
  ON browsers.app_id = votes.app_id
  AND vote_ranking = '$ranking' 
  AND user_id = $userid

このように、投票からの対応するレコードは、適切なvote_rankingがある場合にのみ結合されます。それ以外の場合はNULLsがありますが、データは。から保持されbrowsersます。

于 2012-04-12T19:52:39.967 に答える