我有三個表,其中一個包含可用產品列表,其中包含產品價格等相關詳細信息,另一個包含訂單,最後一個包含特定訂單詳細信息,包括訂單中購買的物品。從選擇語句Sql查詢更新表
我想創建一個查詢來計算訂單的總價格,方法是將兩個表與一個內部聯接連接起來,然後用該值更新訂單表。我寫的代碼包含語法錯誤,作爲新手我可能犯了一個明顯的錯誤,但任何幫助,將不勝感激。
"SELECT Sum(ProductTable.prodPrice) AS Total, OrderDetailTable.orderID " +
"FROM ProductTable INNER JOIN OrderDetailTable " +
"ON ProductTable.prodID = OrderDetailTable.prodID " +
"GROUP BY OrderDetailTable.orderID " +
"HAVING OrderDetailTable.orderID = ? " +
"UPDATE OrderTable " +
"SET " +
"totalPrice = Total " +
"WHERE OrderTable.orderID = ? ";
我正在使用Access。 我也忘了提及那個?使用PaqoGomez的建議,宣佈總的價值現在我得到的錯誤:語法錯誤(缺少操作員)在查詢表達式「0WHERE OrderTable.orderID =?」使用數據視圖參數
pc.Add(new Parameter("?", TypeCode.Int32, basketId.ToString()));
編輯表示。
更新從查詢往往是供應商特定的。你使用的是什麼DBMS? –
我正在使用Microsoft Access – user3495336
對不起,但幾乎任何嘗試這樣做都會導致「操作必須使用可更新查詢」您可能會嘗試使用查詢並加入。 –