Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Susun ulang baris dalam tabel MySQL

Anda perlu melakukan ini dalam dua langkah:

UPDATE MyTable 
   SET `Order` = `Order` + 1 
 WHERE `Order` > (SELECT `Order` 
                    FROM MyTable 
                   WHERE ID = <insert-after-id>);

...yang akan menggeser nomor urut setiap baris lebih jauh ke bawah daftar daripada orang yang Anda masukkan setelahnya.

Kemudian:

INSERT INTO MyTable (Name, `Order`)
VALUES (Name, (SELECT `Order` + 1 FROM MyTable WHERE ID = <insert-after-id>));

Untuk menyisipkan baris baru (dengan asumsi ID adalah kenaikan otomatis), dengan nomor urut satu lebih banyak dari orang yang Anda masukkan setelahnya.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Presto setara dengan MySQL group_concat

  2. PDO MySQL:Sisipkan beberapa baris dalam satu kueri

  3. Bagaimana jika saya menghapus ibdata1 di mysql (LINUX)

  4. Bagaimana cara menerapkan metode bindValue dalam klausa LIMIT?

  5. default kolom dengan string kosong