是否有可能在MySQL中获取表的整数值?

时间:2012-01-11 05:22:21

标签: mysql select insert

我有一个数据库查询

SELECT Id FROM Phone WHERE Model = 'Droid'

返回一个包含一个条目的表(因为Id是主键)。该表如下所示:

+----+
| Id |
+----+
|  1 |
+----+

有没有办法得到那个整数" 1"?我想在以下查询中使用它,但它会产生语法错误:

INSERT INTO Sale (Id, Price)
    VALUES (SELECT Id FROM Phone WHERE Model = 'Droid', 100.00);

4 个答案:

答案 0 :(得分:3)

使用此:

INSERT INTO Sale (Id, Price)
SELECT Id, 100.00 
  FROM Phone 
  WHERE Model = 'Droid';

答案 1 :(得分:1)

子查询需要包装在他们自己的()

答案 2 :(得分:1)

您只需在选择查询周围使用括号,如下所示:

INSERT INTO Sale (Id, Price)
VALUES ((SELECT Id FROM Phone WHERE Model = 'Droid'), 100.00);

这应该正常工作。

答案 3 :(得分:0)

并不是说你得到某种类型的不兼容性;你的语法错了。试试吧

INSERT INTO Sale (Id, Price)
(SELECT Id,100 FROM Phone WHERE Model = 'Droid');