0

我想在表格中间插入一个新行。我正在使用 MySql。我怎样才能做到这一点?

我的表中有以下记录:

ZipCode  CityName 

60101,   Addison
60004,   Arlington Heights
60502,   Aurora
62223,   Belleville 
61008,   Belvidere
60105,   Bensenville
60402,   Berwyn
60108,   Bloomingdal
61701,   Bloomington

我想插入一条新记录,但不是在表的末尾。

例如我想插入:

60103, Bartlett

在第三条记录之后,因此最终表应如下所示:

60101,   Addison
60004,   Arlington Heights
60502,   Aurora
60103,   Bartlett
62223,   Belleville 
61008,   Belvidere
60105,   Bensenville
60402,   Berwyn
60108,   Bloomingdal
61701,   Bloomington.

任何建议都会帮助我。先感谢您!

4

3 回答 3

5

记录的顺序取决于 SELECT 语句中的 ORDER BY 子句。

如果您未指定 ORDER BY,则 RDBMS(MySQL、Oracle、...)可以选择它喜欢的任何顺序。

所以只要插入你的记录,如果你发出

SELECT * from MY_TABLE
ORDER BY CityName 

你会得到想要的结果。

于 2012-10-13T23:25:34.547 回答
2

你不需要INSERT在那个特定的点。您需要做的就是INSERT记录,然后用于ORDER BY对数据进行排序:

INSERT INTO yourtable (ZipCode, CityName)
VALUES (60103, 'Bartlett')

然后

SELECT ZipCode, CityName
FROM yourtable
ORDER BY CityName
于 2012-10-13T23:26:17.027 回答
1

实际上,您不能通过指定记录位置来插入表。但是您可以使用 order 和其他 select 语句来显示您的数据。尝试:

INSERT INTO Yourtable (ZipCode,CityName) VALUES ('60103', 'Bartlett');

进而:

SELECT ZipCode,CityName FROM yourTable ORDER BY CityName ASC;
于 2012-10-13T23:30:03.247 回答