私は下の顧客テーブルに不正な郵便番号を持つ顧客の名前とwrong_zipcodeを表示するためにビューを作成しようとしています。郵便番号。SQLクエリデータベーステーブルの2つの列を比較する
私のコードは次のようになります。 ビューのテストを選択名として作成します。顧客からの郵便番号c、usstates uどこにc.zipcodeがないか(usstatesからzipcodeを選択してください)。
私は下の顧客テーブルに不正な郵便番号を持つ顧客の名前とwrong_zipcodeを表示するためにビューを作成しようとしています。郵便番号。SQLクエリデータベーステーブルの2つの列を比較する
私のコードは次のようになります。 ビューのテストを選択名として作成します。顧客からの郵便番号c、usstates uどこにc.zipcodeがないか(usstatesからzipcodeを選択してください)。
を使用することができます。 1つは顧客情報と1つは郵便番号付きで、入力した郵便番号が郵便番号表に存在しない顧客テーブル内のすべての行を検索したいですか?
この場合、このようなものを使用できます。
SELECT NAME, ZIPCODE from Customers where not exists (SELECT TOP 1 ZIPCODE from MyZipCodeTable where Customers.ZIPCODE = MyZipCodeTable.ZIPCODE)
はい、usstatesテーブルの郵便番号が正しいので、両方のテーブルを比較して、郵便番号が間違っている顧客テーブルの行を探したい – masquellett
次に、このコードを使用すると、郵便番号がないすべての行が取得されますMyZipCodeTableに存在 –
私はあなたの上記のクエリから空のセットを持っています – masquellett
あなたはそれについてどう思いますか? 2つのテーブルを郵便番号で結合し、状態が一致しない行を削除します。
CREATE VIEW customers_with_wrong_zipcode AS
SELECT customers.customer_id, customers.zipcode AS wrong_zipcode, customers.state
FROM customers
INNER JOIN us_states ON us_states.zipcode = customers.zipcode
WHERE us_states.state <> customers.state;
おかげで、仲間 – masquellett
@masquellettを聞いてうれしい!あなたは私の答えを受け入れることができますか?ありがとう! – d34n5
あなたは私はあなたが右の質問を理解している場合、あなたは2つのテーブルを持ってnot exists
Select *
From customers c
Where not exists
(select 1 from usstates where zipcode = c.zipcode);
試しましたか? –
はい、私は、私は今すぐ自分のコードをアップロードします。それは動作していない、間違った答えを得る – masquellett
ビューのテストを選択名前として、顧客からの郵便番号c、usstates uどこにc.zipcode(usstatesからzipcodeを選択してください); – masquellett