是否有可能获得MySQL中的表的整数值?
问题描述:
我有一个数据库查询是否有可能获得MySQL中的表的整数值?
SELECT Id FROM Phone WHERE Model = 'Droid'
返回一个表有一个条目(因为编号是主键)。该表看起来像这样:
+----+
| Id |
+----+
| 1 |
+----+
有没有办法得到这个整数“1”?我想在下面的查询使用它,但它产生一个语法错误:
INSERT INTO Sale (Id, Price)
VALUES (SELECT Id FROM Phone WHERE Model = 'Droid', 100.00);
答
子查询需要裹在自己的()
答
使用此:
INSERT INTO Sale (Id, Price)
SELECT Id, 100.00
FROM Phone
WHERE Model = 'Droid';
答
这并不是说你会遇到某种类型的不兼容;你的语法错了。尝试简单
INSERT INTO Sale (Id, Price)
(SELECT Id,100 FROM Phone WHERE Model = 'Droid');
答
你只需要在你的选择查询支架,像这样:
INSERT INTO Sale (Id, Price)
VALUES ((SELECT Id FROM Phone WHERE Model = 'Droid'), 100.00);
这应该正常工作。