1

次のクエリは、別のテーブル内の対応するエレクター ID と等しくないレコードを検索するように設計されています。

SELECT *
  FROM electors,voting_intention
  WHERE  electors.ID != voting_intention.elector

これは、この FIDDLE http://sqlfiddle.com/#!3/0a4b1/10で 1 つのレコードを返す必要がありますが、多くのレコードと重複を返します。明らかに私は何かが欠けています。何?

4

2 に答える 2

1
SELECT *
  FROM voting_intention
  RIGHT JOIN electors ON electors.ID = voting_intention.elector
  WHERE  voting_intention.elector IS null
于 2012-06-29T09:07:07.203 に答える
1

対応する「投票意思」レコードを持たないすべての選挙人を取得したい場合は、次の方法を試してください。その選挙人にすべてのフィールドが必要だと思います。そうでない場合は、目的の列を選択する必要があります。

select * from 
electors where id not in 
(select elector from voting_intention)
于 2012-06-29T09:05:36.467 に答える