と同じ都市に住んでいる顧客を表示しようとしていますWilliam
。私のcustomer
テーブルには、列として郵便番号がありzipCode
ます。私のcity
テーブルには、都市名がありcityName
ます。
テーブル都市:
zipCode (PK) cityName, stateCode
テーブル顧客:
customerId (PK) customerName, customerAddress, zipCode (FK)
これまでの私のクエリ...
SELECT
cu2.customerName AS 'Customer Name',
ci2.cityName AS 'City Name'
FROM
customer as cu
INNER JOIN
city as ci ON cu.zipCode = ci.zipCode
INNER JOIN
city as ci2 ON ci.cityName = ci2.cityName
INNER JOIN
customer as cu2 ON ci2.zipCode = cu2.zipCode
AND cu2.customerName <> cu.customerName
WHERE
cu2.customerName = 'William'
ウィリアムの郵便番号がチェックされているのは、彼がいる都市に他に 2 つの郵便番号がある場合のみだと思うため、結果は表示されません。彼は 91709 で、cityNAME にはさらに 91708 と 91710 があります。その cityNAME 内の他の顧客を取得する必要があります。