我正在使用SSMS 2014,我想做两件事:
i)计算称为“ aggregatedsaleshistory”的表中的列数。
我知道我必须写类似的东西。您能在错误的地方修改代码吗?
select count (*) from aggregatedsaleshistory where table_name ='aggregatedsaleshistory'
ii)计算该表已连接到另一个表的列数。
例如,使用下面的代码,我从“企业结构”视图中获取“类别”和“子类别”数据,并从“汇总销售历史记录”表中获取它们的“单位”和“现金销售额”之和。
select
es.CategoryName,
es.SubCategoryName,
format(sum(ash.Sales), '#,###') as Units,
format(sum(ash.price * ash.Sales), '#,###') as CashSales
from AggregatedSalesHistory as ash
join v_EnterpriseStructure as es on es.ProductSID = ash.ProductSID
GROUP BY
CategoryName,
SubCategoryName
ORDER BY
CategoryName,
SubCategoryName
我在网站上发现的有关计数列的示例尚不清楚。
先谢谢了。
答案 0 :(得分:1)
对于 情况1)
SELECT COUNT(COLUMN_NAME)
FROM INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_CATALOG = 'database' AND TABLE_SCHEMA = 'dbo'
AND TABLE_NAME = 'aggregatedsaleshistory '