我正在为大学作业构建一个应用程序,我正在使用Visual Basic 2010和Micrsoft Access作为数据库。
我有一个表单,客户可以订购产品,每个产品都有一个固定价格,例如product1是1英镑,但有些客户会得到更便宜的产品所以我有一个表'特价'特价表将包含行包括'customerid''productid'和'specialprice'。
我需要知道如何显示价格,如果客户选择产品1我需要我的应用程序首先检查他们是否有特价,如果不是只显示正常价格,
谢谢,
杰克。
答案 0 :(得分:0)
如果客户没有特价,则为空
SELECT p.Price, c.CustomerID, sp.SpecialPrice, IFNULL(sp.SpecialPrice, p.Price) As UsedPrice
FROM Product p
LEFT JOIN SpecialPrice sp ON p.ProductID = sp.ProductID
AND sp.CustomerID = 123
我的答案基于SQL Server我希望您可以将其转换为MSAccess。重点是将产品表加入当前客户的特价表。如果有特价可以使用,否则使用产品中的价格
代码中的OR
if(row["SpecialPrice"] != null) // if(row["SpecialPrice"] != DBNull.Value) --- instead
price = row["SpecialPrice"];
else
price = row["Price"];