0

一般的に言って、ユーザーがすでに投票したプロファイルが表示されないようにして、2回投票しないようにするにはどうすればよいですか?

それぞれが一意のユーザーID(「userID」列)を持つユーザーのテーブル(「Users」と呼ばれる)があり、各ユーザーが別のユーザーに(それぞれを使用して)投票するたびに別のテーブル(「Votes」と呼ばれる)があります。ユーザーIDの列は「fromUser」、「toUser」、「vote」)であるため、ユーザーに投票する新しいランダムプロファイルを表示する場合、現在のユーザーがすでに投票しているユーザーを除外するための最良の方法は何ですか。 on(つまり、「userID」が「toUser」であり、「fromUser」が現在のユーザーのuserIDである「userID」を除外します)。

ありがとう!

4

2 に答える 2

1
SELECT userID FROM users
WHERE userID NOT IN (SELECT toUser FROM votes WHERE fromUser = 'theUserIdThatIsVotingNow')
ORDER BY RAND() LIMIT 1
于 2011-08-11T11:32:49.943 に答える
0

これでうまくいくはずです。

SELECT * 
FROM Users 
WHERE userID NOT IN (SELECT toUser FROM Votes WHERE fromUser = '$current_user_userID');
于 2011-08-11T11:31:37.127 に答える