我正嘗試在C#asp.net的sql數據庫中將一個購物籃寫入訂單+訂單行。 訂單行將包含購物籃中每個商品的訂單編號,總價格,生產量,數量等。訂單本身將包含訂單號作爲主鍵,並且將通過它連接到不同的行。 昨天一切正常,但現在,因爲我試圖在插入語句中使用SELECT命令來讓事情更動態我得到上述語法錯誤。INSERT INTO ...在連接運算符中選擇語法錯誤
有誰知道什麼地方錯了這種說法:
INSERT INTO [order]
(klant_id,totaalprijs,btw,subtotaal,verzendkosten)
SELECT klant.id
, SUM(orderregel.totaalprijs)
, SUM(orderregel.btw)
, SUM(orderregel.totaalprijs) - SUM(orderregel.btw)
, 7.50
FROM orderregel
INNER JOIN
klant
ON [order].klant_id = klant.id
WHERE klant.username = 'jerry'
GROUP BY
id;
在「命令」表中的訂單號碼是自動編號,在asp代碼隱藏有一個針對每個處理線正在爲每一個產品編寫,在這個循環之外有一個索引設置在0之上,每增加1個索引就會增加一個索引。訂單的執行查詢僅在第一個循環的開始時執行一次,並且在MAX(ordernumber)與ordernumber之後添加行。
我希望我已經提供了足夠的信息,有人能夠幫助我。 在此先感謝!
編輯: 感謝大家,使用此查詢做到了!
INSERT INTO [指令] (klant_id,totaalprijs,順便說一句,subtotaal,verzendkosten)選擇(SELECT klant.id FROM klant WHERE klant.username = '傑裏'),
SUM(orderregel.totaalprijs), SUM(orderregel.btw),
SUM(orderregel.totaalprijs) - SUM(orderregel.btw),7.50 FROM
orderregel;
編輯您的查詢將無法工作。嘗試插入兩個訂單。然後檢查您的第二筆訂單的總價是否正確。 – Andomar
嗯是的,我注意到了這一點,你在這裏看到的位置嗎?我試着獨自現在做,但成天和編程布希是在下班後回家不是我的因子評分過程太好;) – user1477356
你必須弄清楚如何插入訂單和訂單行之間的關係。我的答案中有一個可能的解決方案。我睡了一夜就可以了:) – Andomar