问题描述
- 关于SQL server语句查询统计问题
-
如果相同的Jointno算一个检测口,这一个检测口里有一个是不合格的 那么这个检测口就是不合格,如何统计合格的检测口里的合格数量? 查询生成的结果 Weldercode|合格数
SFCC-124 | 3
解决方案
哥们,对不对?对的话麻烦结贴。
解决方案二:
我这里设置table名为A
select count(C.Lineno) as '合格数' from
(select Linenocount(Lineno) as 'count' from A where ResultB='合格' group by Lineno)C
where C.count=3
解决方案三:
SQL Server 语句查询手册
Sql server 查询语句详写
关于sql server中,建视图的语句中不能加order by的问题
解决方案四:
max(len(ResultB) 应该可以吧
解决方案五:
select weldercodecount(Lineno) as ""合格数"" from Table where Lineno not in (select DISTINCT Lineno from table where ResultB=""不合格"")
解决方案六:
--先得到中间表
SELECT jointno
Weldercode
CASE
WHEN max(len(ResultB)) = 2
THEN 'qualified'
WHEN max(len(ResultB)) = 3
THEN 'unqualified'
END AS result
INTO #midtable
FROM tablename
GROUP BY jointno
Weldercode
--统计各个Weldercode的 合格/不合格检测口数量
SELECT Weldercoderesult
count(*)
FROM #midtable
GROUP BY Weldercoderesult