mysql插入并选择带有插入ID的行

时间:2013-10-30 16:52:42

标签: mysql select insert innodb

我想在插入之前选择前10行说10。如果插入之前没有行,那么它只返回已插入的行

插入后,我可以通过使用获取id        mysql_insert_id();

这是在插入之前选择前10行的智能方法。

这必须适用于0或10区间内的任何数字。因此,假设它们在插入之前是7行,那么它将只返回8行。

我正在考虑使用像这样的限制

  $insertid  = mysql_insert_id()
  $postid    = 200
  Select a, b, c from mytable where a = '$postid' limit $insertid 10 order by b

但这不像我想象的那样有效。

2 个答案:

答案 0 :(得分:1)

Select a, b, c from mytable where primary_key_col < '$insertid' and a = 200
ORDER BY primary_key_col DESC LIMIT 10

答案 1 :(得分:0)

您可以使用BETWEEN:

Select a, b, c from mytable where a BETWEEN  $postid - 10 AND $postid 

(订单很重要)

另外,你应该使用mysqli_而不是mysql