SO と Google の両方でこの情報を検索しましたが、信頼できる回答は見つかりませんでした。
次のような更新ステートメントがある場合:
UPDATE table SET rowA = rowB, rowB = NULL ...
のようだ:
- 順序は重要ではありません (
UPDATE table SET rowB = NULL, rowA = rowB
) - それにもかかわらず、UPDATE は最初に前の値を読み取り、次にそれらを更新するように見えるため、rowA は rowB の前の値を取得します。
上記の 2 つの点が一般的に SQL に当てはまるかどうか、つまり、それらがSQL UPDATE セマンティクスの一部であるかどうか、標準に含まれているかどうか、または実装の詳細である (したがって変更される可能性がある) かどうかを知りたいです。ありがとう!
編集:「信頼できる」回答が必要であることを強調しておきます。動作が実際にここに示されているものであることを、私はすでに多くの SQL 実装でテストしました。私が必要としているのは、これが実際に UPDATE の SQL 標準/仕様/セマンティクスに含まれていることの「証明」であり、標準へのリンク、または代替の信頼できるソース (MSDN、dev.mysql.com、Oracle または PostgreSQL) へのリンクがあります。ドキュメント、...)