Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Thực hiện thay đổi đối với nhiều bản ghi dựa trên sự thay đổi của một bản ghi với SQL

Điều này yêu cầu một truy vấn phức tạp cập nhật nhiều bản ghi. Nhưng một thay đổi nhỏ đối với dữ liệu của bạn có thể thay đổi mọi thứ để có thể đạt được điều đó bằng một truy vấn đơn giản chỉ sửa đổi một bản ghi.

UPDATE my_table set position = position*10;

Ngày xưa, ngôn ngữ lập trình BASIC trên nhiều hệ thống có số dòng, nó khuyến khích mã spagetti. Thay vì các hàm, nhiều người đã viết GOTO line_number . Rắc rối thực sự nảy sinh nếu bạn đánh số các dòng một cách tuần tự và phải thêm hoặc xóa một vài dòng. Làm thế nào mọi người có được xung quanh nó? Bằng các dòng tăng lên 10! Đó là những gì chúng tôi đang làm ở đây.

Vì vậy, bạn muốn lê là mặt hàng thứ hai?

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

Bạn lo lắng rằng cuối cùng khoảng trống giữa các mục sẽ biến mất sau nhiều lần sắp xếp lại? Đừng sợ, chỉ cần làm

UPDATE my_table set position = position*10;

Theo thời gian.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Vòng lặp qua các tập kết quả trong MySQL

  2. Hàm TAN () MySQL - Trả về tiếp tuyến của một giá trị trong MySQL

  3. PDO MySQL:Chèn nhiều hàng trong một truy vấn

  4. Cách tạo mối quan hệ trong MySQL Workbench

  5. Mysql_real_escape_string () có bị hỏng không?