シナリオ 1 existingTable というテーブルに追加したい 2 つの新しいフィールドがあります。これらのフィールドを追加した後、それらのフィールドのデータで一部のレコードを更新できますが、すべてのレコードを更新することはできません。空白のエントリがありますが、これで問題ありません。
問題 1 正しいレコードが更新されていることを確認したい。既存のテーブルと受信データ テーブルの主キーは Email です。
提案された解決策 1 このような UPDATE クエリが解決策です。
UPDATE existingTable SET existingTable.newField1 = incomingDataTable.newField1、existingTable.newField2 = incomingDataTable.newField2 WHERE existingTable.Email = incomingDataTable.Email
どう思いますか?
シナリオ 2 テーブルが適切なレコードの新しいフィールドとデータで更新された後、このテーブルを他の 2 つのテーブルと結合したいと考えています。一部のフィールドが空白であっても、すべてのエントリをこの結合に含める必要があります。どのレコードも除外したくありません。
ちなみに、これらのテーブルの各レコードは、他のテーブルのパートナーと 1 対 1 の関係を持っています。重複レコードがあってはなりません。過去に、Access が INNER JOIN を使用しているのを見てきました。これは、newField1 と newField2 の値を持たないレコードを除外します。これは私が望むものではありません。
問題 テーブルの結合に不慣れです。さまざまな結合は、私にとって少し混乱します。
提案された解決策 結合される 3 つのテーブルは 1 対 1 の関係を持つ必要があるため、使用する結合は必ずしも重要ですか?
SELECT * FROM existingTable FULL JOIN tableToJoinWith1、tableToJoinWith2 オン existingTable.Email = tableToJoinWith1.Email、tableToJoinWith1.Email = tableToJoiNWith2.Email