拖动表格中间的一些行

时间:2012-11-03 15:22:07

标签: mysql sql

正如我所说,可以复制每一行并将其放在下面的行上,或者将相同的移动字段行复制到下面的字段中? (当然有和索引自动增量)。结果应该是第41行中的旧行40内容(字段)等等。

REPLACE table SET column1 = previuos(column1), column2= previous(column2), column3=(previous(column3)  where id > 20 and id < 300 

它们不是最后插入的,它们位于表格的中间并想要向下移动,所以让我在选定的那些开头有一些空行(带索引)

  INSERT INTO table (
  SELECT column1,column2,column3 
  FROM  table  WHERE id > 20 AND id < 200
  ) WHERE id = 30 

从21到199选择行,然后在30和前面插入

谢谢

2 个答案:

答案 0 :(得分:1)

您的问题有点难以理解,但如果您想复制最后插入的行,您可以执行以下操作:

INSERT INTO your_table (
  SELECT NULL, column_1, column_2, column_etc 
  FROM your_table ORDER BY your_id DESC LIMIT 1
);

答案 1 :(得分:0)

请记住,数据库表不是电子表格。

然而,这将做你想要的:

UPDATE mytable 
SET id = id + 9 
WHERE id BETWEEN 21 AND 199;