在插入查询中选择查询

时间:2014-07-11 09:04:06

标签: php mysql sql

我正在尝试创建一个包含select查询的插入查询。问题是它似乎不起作用,但它们分开工作。

选择查询从数字表中选择最高数字,然后需要为其添加1。 $ variables来自php。

我做错了什么?

INSERT INTO numbers (number, storeID, udid)
VALUES (
    (SELECT number
     FROM numbers
     WHERE storeid = '$var' AND DATE(timestamp) = CURDATE() 
     ORDER BY number DESC LIMIT 1
    ) + 1, $var, $udid)

1 个答案:

答案 0 :(得分:0)

您可以先创建一个存储递增值的变量

$results = mysqli_query($con, "Select number FROM numbers where storeid= '$var' AND DATE(timestamp) = CURDATE() Order by number DESC LIMIT 1");
if ($row = mysqli_fetch_array($results))
{
  extract($row);
  $incremented_value = $row['number'] + 1;
}

然后,列数必须相同

INSERT INTO numbers (number, storeID, udid) 
VALUES 
($incremented_value, $var, $udid)