【发布时间】:2018-09-11 19:17:52
【问题描述】:
两个表:
CART(CartID、UserID、DateCreated、ProductID、ProductName、Size、Price、Quantity、Subtotal、HoursWork)
PRODUCTS(ProductID, Name, SDescription, Price, Size, Images, Thumbnail, Weight, LDescription, Stock, CategoryID, HoursWork)
我正在处理电子商务网站的购物车/购物车页面。具体来说: “+”链接按钮可将购物车中所选产品的数量增加 1,以及 稍后点击“-”链接按钮,将购物车中所选产品的数量减少 1。
除了 Quantity,Cart 表的 Subtotal 和 HoursWork 字段也需要更新。小计:计算总订单价格。 HoursWork:计算预订时段所需的小时数。
到目前为止,我有一个 SQL 语句来检查 Products。Stock 的值 > 0
如果满足此条件,则会运行一条 SQL 语句来更新购物车, (数量 = 数量 + 1,小计 = @Subtotal + @Price WHERE CartID = @CartID)和产品(Stock = Stock - 1 WHERE ProductID = @ProductID)。
我正在努力为购物车添加 HoursWork。所以我创建了一个新的 SQL 语句进行测试。我需要 Cart.HoursWork 字段,以便在购物车中为同一 ProductID 添加 Products.HoursWork 字段值。
到目前为止我有:
"UPDATE Cart
SET HoursWork = HoursWork +
SELECT HoursWork
FROM Products
WHERE Products.ProductID = Cart.ProductID
WHERE CartID = @CartID"
之前我尝试过:
"UPDATE Cart
SET HoursWork = Cart.HoursWork + Product.HoursWork
WHERE ProductID = @ProductID
FROM Cart, Products
WHERE CartID = @CartID"
购物车中每件商品的购物车 ID、产品 ID、产品名称、尺寸、价格、数量、小计、工时和重量都存储在变量中,因此很容易访问。
【问题讨论】:
标签: sql asp.net sql-update conditional-statements