我有两个问题:
1)WHERE子句不能始终如一地工作? 2)我想知道谁将每周数据分组为季度数据。
1)在某些代码中,我有一个WHERE子句,该子句不能过滤所选SubCategory想要的结果。
我在较短的代码上测试了WHERE子句(如下所示),正如预期的那样,它在“企业结构”视图的Yogurt子类别中给出了前10个结果。
select top 10 * from v_EnterpriseStructure
where SubCategoryName = 'Yogurt'
但是,当我运行此代码时,它返回价格区ID,价格区名称,客户部门ID等,它将返回所有子类别的数据,而不是JUST酸奶。有谁知道为什么会这样吗?
select
pz.PriceZoneID,
pz.Name,
es.ClientDepartmentID,
es.DepartmentName,
es.ClientCategoryID,
es.CategoryName,
es.ClientSubCategoryID,
es.SubCategoryName,
es.ClientProductID,
es.ProductName,
ash.Sales as Units,
ash.price * ash.Sales as CashSales,
ash.Cost,
CAST(ash.date as Date) as Date
from aggregatedsaleshistory as ash
join v_EnterpriseStructure as es on es.ProductSID = ash.ProductSID
join PriceZone as pz on pz.PriceZoneID = ash.PriceZoneID
WHERE es.SubCategoryName = 'Yogurt'
GROUP BY
pz.PriceZoneID,
pz.Name,
es.ClientDepartmentID,
es.DepartmentName,
es.ClientCategoryID,
es.CategoryName,
es.ClientSubCategoryID,
es.SubCategoryName,
es.ClientProductID,
es.ProductName,
ash.Cost,
ash.Date
2)我上周发布了与此有关的问题,以及为什么某些代码无法正常工作的问题。
尽管回答了为什么代码不起作用的问题,但是关于将数据分组为四分之一的问题却没有得到很好的回答。
关于季度问题,我想将上述第一季度中的长查询所返回的数据的结果(当前为每周格式,因为日期均为每周日期)返回为季度格式。
有人知道怎么做吗?
先谢谢了。