Đ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.