特定の郡出身で、特定の営業担当者から注文した、注文した顧客名をリストしようとしています。問題は、最終テーブルに名前が何度も表示されることです。それぞれに一度だけ名前を印刷するにはどうすればよいですか?
SELECT cName
FROM customer INNER JOIN orders ON customer.cNo = orders.cNO,author
WHERE county = "Galway" AND saleRepName = "Jane Smith";
特定の郡出身で、特定の営業担当者から注文した、注文した顧客名をリストしようとしています。問題は、最終テーブルに名前が何度も表示されることです。それぞれに一度だけ名前を印刷するにはどうすればよいですか?
SELECT cName
FROM customer INNER JOIN orders ON customer.cNo = orders.cNO,author
WHERE county = "Galway" AND saleRepName = "Jane Smith";
使用できますDistinct
が、多くのレコードがある場合はパフォーマンスが低下する可能性があります
SELECT DISTINCT
cName
FROM customer
INNER JOIN orders ON customer.cNo = orders.cNO,author
WHERE county = "Galway" AND saleRepName = "Jane Smith";
Group By
カウントを取得できるという追加の利点により、より高速になる場合があります。
SELECT
count(1),
cName
FROM customer
INNER JOIN orders ON customer.cNo = orders.cNO,author
WHERE county = "Galway" AND saleRepName = "Jane Smith";
GROUP BY cName
これにより、次のようなものが出力されます。
3 John Doe
6 Jane Smith
1 Jersey Mike