2013-03-31 41 views
0

我想根据销售产品的数量创建一个表格[Top Stores],它有10个最活跃的商店。每家商店销售3种产品。我只需要为每个产品添加销售数量即可到达StoreSale。 问题是当产品没有销售时,数量值留空而不是0.我尝试通过isnull测试将空白更改为0。访问查询中的错误需要更正

SELECT top 10 StoreName, StoreSale = (iif (isnull(Product1), 0, Product1) + iif (isnull(Product2), 0, Product2) + iif (isnull(Product3), 0, Product3)) INTO [Top Stores] 
FROM SaleTable ORDER BY StoreSale DESC; 

回答

1

两件事情:请在下面我的代码,指出错误

  1. 如果使用=

    ,你会做一个平等的测试,你不能有这样的一个分配SQL。
    您需要将计算结果命名为AS StoreSale

  2. 使用Nz()获得0.00当字段值为NULL

结果:

SELECT TOP 10 StoreName, 
       Nz(product1) + Nz(Product2) + Nz(Product3) AS StoreSale 
INTO [Top Stores] 
FROM SaleTable 
ORDER BY StoreSale DESC;