次の条件でテーブルを更新するためのpdoステートメントを作成したいと思います。 私はマスターと更新のテーブルが重複しています。 マスターテーブルの行を対応するIDで更新テーブルから更新するとき、Masterテーブルの列データを、デフォルト値 "0"を含むUpdatesテーブルの列データに置き換えたくありません。つまり、Updatesテーブルの列に「0」が含まれている場合、その列データに対して更新が行われなかったため、対応するMasterテーブルの列を更新しないでください。データを含むUpdatesテーブル内の他のすべての列は、Masterテーブルの対応する列を更新する必要があります。複写テーブルのカラムを0以外のデータのみを含むカラムで更新する
私はpdo UPDATE文を書く方法を知っていますが、上記の文で説明したように条件をどのように組み込むかの例は見つかりませんでした。どんな指針も大変ありがとうございます。
私はこのスキームを設定しました。マスターテーブルのレコードを更新する前に更新内容を確認したいからです。
キラークエリが必要ない場合は、何かがゼロでない「Updates」テーブルからすべてのレコードを選択し、対応する「マスター」レコードを更新します。 –
@u_mulder意味が分からない各行にはデータとカラムが0のカラムが含まれています – Spaceman
マスターテーブル内の任意のカラムに対して、次の操作を行います: 'updated'カラムがゼロでない場合はマスターカラムを更新するか、またはマスターカラムを現在のマスタカラム値で更新します。すなわち、更新またはそれ自体から新しい価値をもって更新する。これにより、1つの更新ステートメントで必要な処理が実行されます。 –