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

SQLによる単一レコードの変更に基づいて複数のレコードに変更を加える

    これには、多くのレコードを更新する複雑なクエリが必要です。ただし、データにわずかな変更を加えると状況が変わる可能性があるため、1つのレコードのみを変更する単純なクエリでデータを取得できます。

    UPDATE my_table set position = position*10;
    

    昔は、多くのシステムのBASICプログラミング言語には行番号があり、スパゲッティコードを奨励していました。関数の代わりに、多くの人がGOTO line_numberを書きました 。行に順番に番号を付け、数行を追加または削除しなければならない場合、実際の問題が発生しました。人々はどうやってそれを回避したのですか?行を10ずつ増やします!それが私たちがここで行っていることです。

    では、梨を2番目のアイテムにしたいですか?

    UPDATE my_table set position = 15 WHERE listId=1 AND name = 'Pears'
    

    何度も並べ替えると、最終的にアイテム間のギャップがなくなるのではないかと心配ですか?恐れることはありません

    UPDATE my_table set position = position*10;
    

    時々。



    1. SqlDataSourceEnumerator.Instance.GetDataSources()は、ローカルSQLServer2008インスタンスを検索しません

    2. 中小企業がクラウドコンピューティングからどのように利益を得ることができるか

    3. SQLServerの単一行MERGE/upsertの構文

    4. テーブルは「読み取り専用」です