在现有结果之后插入新记录

时间:2011-12-13 17:18:04

标签: mysql insert

在我的items表中,我得到了以下记录:

shop_vnum   item_vnum   count
4           13209       1
4           11229       1

然后,我想在item_vnum 13209之后插入一条新记录,所以它看起来像:

shop_vnum   item_vnum   count
4           13209       1
4           12400       1
4           11229       1

这可能吗?

2 个答案:

答案 0 :(得分:1)

如果您使用InnoDB表并且item_vnum是主键,InnoDB实际上将通过item_vnum以“升序”“物理”排列行(这使用称为聚簇索引的东西)。

但是,看起来你希望它按降序排列,所以我能想到的下一个最好的事情就是创建一个视图:

http://net.tutsplus.com/tutorials/databases/introduction-to-mysql-views/

http://www.techotopia.com/index.php/An_Introduction_to_MySQL_Views

CREATE VIEW items_view AS SELECT * FROM items ORDER BY item_vnum DESC;

然后,名为“items_view”的视图应该像表格一样,反映出您在“items”表中插入内容时要查找的内容。

但是,最好的答案可能是:您不必担心它们是如何插入的。您只需要担心以后如何使用select语句检索它们。请务必在select语句的末尾使用“ORDER BY item_vnum desc”。

答案 1 :(得分:0)

就像这样

insert into items (shop_vnum, item_vnum, `count`)
values (4, 12400, 1);