0
このクエリは、オークション出品者を名前で検索し、複数のテーブルからデータを取得しています。このクエリで何か問題がありますか? 1つの結果が2回返されますが、理由はわかりません
それは「明確な」使っているにもかかわらず、二回結果に戻っていますが、私は何が起こっているのかを把握することはできません...
をデータのサンプルを提供するのは難しいだろうが、私は」いくつかのSQLの天才が...原因に
SELECT DISTINCT a.id,a.name, al.city
FROM auctioneers a
LEFT JOIN auctioneersloc al ON al.auctioneerId = a.id
LEFT JOIN auctioneerscont ac ON ac.auctioneerId = a.id
WHERE a.name LIKE "%Jones%"
GROUP BY city
おかげで提案を提供できることを望んメートル。
なぜあなたは 'GROUP'ですか、集約をしていませんか? – JNK
私は、「二倍」とは、(a.id、a.name、al.city)の組み合わせ全体ではなく、単に(a.id、a.name)ということを意味すると推測して危険です。多くの点でクエリが間違っているため、これは完全に可能です。それは都市ごとにグループ化され、各都市で* RANDOM * IDと名前を取得します。 DISTINCTはすべての列で機能しますので、複数の都市に(a.id、a.name)が存在する場合は、2回取得できます。 – RichardTheKiwi
なぜあなたはオークションに参加するのですか?あなたはそれから選択するのではなく、それはあなたのグループ句であなたのグループにはありません... –