我想在表格中间插入一个新行。我正在使用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.
任何建议都会对我有所帮助。先感谢您!
答案 0 :(得分:5)
记录的顺序取决于SELECT语句中的ORDER BY子句。
如果你没有指定ORDER BY,那么RDBMS(MySQL,Oracle,...)可以选择它喜欢的任何顺序。
所以只需插入您的记录,如果您发出
SELECT * from MY_TABLE
ORDER BY CityName
您将获得所需的结果。
答案 1 :(得分:2)
在该特定点,您不需要INSERT
。您需要做的只是INSERT
记录,然后使用ORDER BY
对数据进行排序:
INSERT INTO yourtable (ZipCode, CityName)
VALUES (60103, 'Bartlett')
然后
SELECT ZipCode, CityName
FROM yourtable
ORDER BY CityName
答案 2 :(得分:1)
实际上,您无法通过指定记录位置来插入表格。但您可以使用订单和other select statement来显示您的数据。尝试:
INSERT INTO Yourtable (ZipCode,CityName) VALUES ('60103', 'Bartlett');
然后:
SELECT ZipCode,CityName FROM yourTable ORDER BY CityName ASC;