2011-02-12 144 views
0

我的帳單表具有列項目,價格和數量,我的以下代碼從另一個表(產品)獲取項目和價格,但是我也想爲數量插入另一個項目。我怎樣才能把這個結合起來呢?數量= 1OleDb SQL插入語句

INSERT INTO Bill (Item, Price) SELECT Product, Price FROM Products WHERE Product = 'Soft Drink'";

+0

您正在製造混亂,我認爲您必須通過示例發佈您的表架構和查詢以正確地幫助您。 – mahesh 2011-02-12 15:54:48

回答

0

你可以插入一個子查詢到主SELECT語句:

INSERT INTO Bill (Item, Price) 
SELECT Produce, Price, (Select Quantity FROM SomewhereElse) 
WHERE Products = 'Soft Drink' 

或者你可以使用一個變量:

declare @Quantity decimal(18,2) 
select @Quantity = Quantity from SomewhereElse 

INSERT INTO Bill (Item, Price) 
SELECT Produce, Price, @Quantity WHERE Products = 'Soft Drink' 
+2

標籤`sql`是通用的。特別的味道是`ms-access`,所以你的答案的第二部分將不起作用。 – Fionnuala 2011-02-12 15:40:33

0

我解決了它以下聲明:

"INSERT INTO Bill (Item, Price, Quantity) SELECT Product, Price, '1' as Quantity FROM Products WHERE Product = 'Soft Drink'";

+2

您將數量作爲文本(字符串)插入,它應該是數字,至少我希望字段(列)數量在您的表中是數字,因此:`1作爲數量`,即沒有引號。 – Fionnuala 2011-02-12 15:42:28