如何在mysql表中更改记录位置?

时间:2016-10-03 02:09:25

标签: mysql

如何更改mysql表中的记录位置?我创建了一个包含大约200条记录的表。如何将记录号19更改为8?

2 个答案:

答案 0 :(得分:1)

您可以使用更新语句交换元组中的数据。

update table1 a
 inner join table1 b on a.id <> b.id
   set a.col1= b.col1,
       a.col2= b.col2,
       a.col3= b.col3
 where a.id in (8,19) and b.id in (8,19)

结果:交换行值。

答案 1 :(得分:0)

完全相同的是你无法改变或交换,但你可以在查询中作为一个视图来做:

像这样:

select case when id = 19 then 8 else 
 (case when id = 8 then 19 else id end) end as id from yourTable