A. sqlserver怎麼實現同一個表中多個count查詢並且分組並且統計總數
可以有兩種解決方法,
所需工具:SQL
查詢兩個count的方法1:
SELECT paperName , COUNT (1) AS 總題數 , sum (CASE WHEN statu = 1 THEN 1 ELSE 0 END) AS 審核題數FROM questionGROUP BY paperNme
查詢兩個count的方法2:
select s.總題數, s.審核題數, s.paperNamefrom (select COUNT(1) as 總題數, case when status = 1 then count(1) else 0 end as 審核題數, paperNamefrom question--where papername in (select distinct paperName from question), 這個條件可以不要了group by paperNme, stauts -- status也要作為分組欄位,因為在case中有使用) s
B. sqlserver如何根據日期進行分組查詢
日期分組的概念,就是把日期所在的欄位,轉換為 一個人日期類型,然後group by
sqlserver日期分組相關知識
selectconvert(varchar,dateinfo,111)asa,sum(***)fromtableName
groupbyconvert(varchar,dateinfo,111)
請參閱,如有疑問,及時溝通!
謝謝!
C. sqlserver語句,按周分組統計數據,請各位大神指教小弟。
---把getdate()替換成你的日期欄位就可以了, between and的2個日期分別是你說的2個年頭年尾的情況
select case when getdate()>=cast('2014/1/1' as datetime) then datepart(week,getdate()) else 1 end as 第幾周
--from table_name
where getdate() between (case when datepart(weekday,cast('2014/1/1' as datetime))<>1 then
cast('2014/1/1' as datetime)-datepart(weekday,cast('2014/1/1' as datetime))+2
end )
and
(case when datepart(weekday,cast('2014/12/31' as datetime))<>6 then
cast('2014/12/31' as datetime)-datepart(weekday,cast('2014/12/31' as datetime))+1
end )
D. sqlserver 分組統計
select部門欄位名,sum(casesexwhen『男』then1else0end)as'男',女=sum(casesexwhen『女』then1else0end)
fromstudentgroupby部門欄位名
別的都一樣了~
E. sqlserver 分組之後 拼接新欄位 如下:
Select B.人員ID,B.人員名稱,Left(TempInfo,LEN(TempInfo) - 1) AS 新欄位 From
(Select 人員ID,人員名稱,(Select 人員的兒女 + '-' + 兒女歲數 +',' From 人員 Where 人員ID = A.人員ID For XML Path('')) AS TempInfo
From 人員 A
Group By 人員ID,人員名稱) B
這個就是你要的。