sql >> データベース >  >> RDS >> Mysql

1つのクエリでPyMySQLの異なる更新?

    最高のパフォーマンスは、「テスト」をSQLロジック自体にエンコードできる場合です。これにより、すべてを少数のUPDATEステートメントにまとめることができます。または、少なくともその方法でできるだけ多くのことを実行して、個別に更新する必要のある行を少なくします。

    例:

    UPDATE tablename set firstname = [some logic]
    WHERE [logic that identifies which rows need the firstname updated];
    

    あなたはあなたのテストについてあまり説明していないので、確信するのは難しいです。ただし、通常、少しの作業でWHERE句にかなり多くのロジックを組み込むことができます。

    もう1つのオプションは、ロジックをストアドプロシージャに入れることです。引き続き350,000の更新を実行しますが、少なくともすべてが「ネットワークを通過」しているわけではありません。ただし、これは最後の手段としてのみ使用します。ビジネスロジックは可能な限りアプリケーション層に保持する必要があり、ストアドプロシージャを使用すると、アプリケーションの移植性が低下します。



    1. 雄弁な多対多対多対多-遠い関係を簡単にロードする方法

    2. 多くのテーブルまたは行、SQLでより効率的なものはどれですか?

    3. MicrosoftAccessでインベントリデータベースを作成する方法

    4. OracleのPL/SQL関数はDBMS_AQを認識できません