2012-01-11 96 views
0

我有一個數據庫查詢是否有可能獲得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); 

回答

1

子查詢需要裹在自己的()

3

使用此:

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

這並不是說你會遇到某種類型的不兼容;你的語法錯了。嘗試簡單

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

你只需要在你的選擇查詢支架,像這樣:

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

這應該正常工作。

相關問題