如何使用INSERT AND COUNT创建SQL命令

时间:2013-05-23 23:47:26

标签: php mysql select insert count

我不知道如何计算名为id的列。我试过了

mysql_query("INSERT INTO `servers` (`user_id`, `ip`, `port`, `banner`, `disabled`, `vip`,`premium`, `name`, `status`, `votifier_key`, `votifier_port`, `country`)
             VALUES ('$session_user_id', '$ip', '$port', 's=.'id'.back', '$disabled', 0,'false', '$name', '1', '$votifier', '$votPort', '$country')");

但它不起作用,因为我无法得到id。有人可以帮忙吗?

1 个答案:

答案 0 :(得分:0)

您需要使用INSERT ... SELECT请求。

假设我们有一个空表测试:

     test
|----+-------|
| id | value |
|----+-------|

CREATE TABLE IF NOT EXISTS `test` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `value` int(10) unsigned DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB  DEFAULT CHARSET=utf8;

当我们运行此SQL请求时:

INSERT INTO test (value) SELECT COUNT(*) FROM `test`

我们将按顺序获取test填充数据:

| id | value |
|----+-------|
| 1  | 0     |
| 2  | 1     |
| 3  | 2     |

将这种方法用于您的桌子,您将获得所需的一切。