と同じ都市に住んでいる顧客を表示しようとしていますWilliam
。このクエリは彼の郵便番号を取得し、彼の郵便番号を持つ顧客を見つけます。郵便番号に基づいて都市NAMEの顧客を見つける必要があります。都市名ごとにいくつかの郵便番号があります。
テーブルシティ:
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内の他の顧客を取得する必要があります。