sqlserver2008中的跨表查询
我有一个包含以下字段的SQL表sqlserver2008中的跨表查询,sql,sql-server-2008,ms-access-2007,pivot,crosstab,Sql,Sql Server 2008,Ms Access 2007,Pivot,Crosstab,我有一个包含以下字段的SQL表 ID, Rly, Shed, Loco_no, shed, Date_failure, Equipt 我正在使用MS access 2007中的以下脚本在access中使用交叉表查询 TRANSFORM Count(Sheet1.[sno]) AS CountOfsno SELECT Sheet1.[Equipt], Count(Sheet1.[sno]) AS [Total Of sno] FROM Sheet1 GROUP BY Sheet1.[Equipt
ID, Rly, Shed, Loco_no, shed, Date_failure, Equipt
我正在使用MS access 2007中的以下脚本在access中使用交叉表查询
TRANSFORM Count(Sheet1.[sno]) AS CountOfsno
SELECT Sheet1.[Equipt], Count(Sheet1.[sno]) AS [Total Of sno]
FROM Sheet1
GROUP BY Sheet1.[Equipt]
PIVOT Sheet1.[Shed];
如何将此查询转换为SQL Server存储过程以在aspx页面上使用
请帮助在SQL Server中查看函数。考虑到您没有提供关于表或示例数据的许多详细信息,基于您在注释中的尝试,类似这样的内容可能会为您指明正确的方向
SELECT *
FROM
(
SELECT Equipt, Shed
FROM PunctualityMain
) x
PIVOT
(
COUNT(Equipt)
FOR Shed IN ([BSL], [AQ])
) p
如果您发布更多详细信息,那么我们可以提供更多帮助 SQL Server标记中的Pivot搜索可能重复。我尝试了上述示例:从SELECT Equipt中选择Equipt,[BSL]作为BSL,[AQ]作为AQ,从Equisity中删除Main ps Pivot COUNT Equipt for Equipt in[BSL],[AQ]作为pvt,但它会生成一个错误:列名“Equipt”无效。@user1235981如果您发布一些示例数据,这些数据将有助于第一个字段的“Equipt”数据-TFP、TM、VCD、VCB、齿轮、转向架和第二个字段的“Shed”数据-BSL、AQ、TKD、AJJ、GZB、NKJ。要求计算棚内的设备,如BSL棚内的22 TM或AJJ棚内的5 TFP。感谢上述Ans,但缺少eqipt的名称。请求。是BSL中的TFP 5,AQ中的TFP 2;VCD 8在BSL,1在AQ等。请编辑您的OP与一些样本数据从您的表以及预期的结果。请包括所有领域,你需要在你的最终产品。我已经修改了你的ans根据我的要求,它为我工作。非常感谢。装备BSL AQ TFP 0 3 TM 4 0 VCB 1 1 VCD 5 0这是结果。是否可以在每行末尾添加一个“总计”字段,如Equipt BSL AQ total