SELECT CASE ( ( ( CASE ( SIGN(CONVERT(VARCHAR(100),GETDATE() - DATEADD(year,DATEDIFF(year,birthday,GETDATE()),birthday),112) - 19000101) ) WHEN 0 THEN DATEDIFF(year,GETDATE()) + 1 WHEN 1 THEN DATEDIFF(year,GETDATE()) + 1 WHEN -1 THEN DATEDIFF(year,GETDATE()) END ) - 1 ) / 5 + 1 ) WHEN 1 THEN '<20' WHEN 2 THEN '<20' WHEN 3 THEN '<20' WHEN 4 THEN '<20' WHEN 5 THEN '20~25' WHEN 6 THEN '25~30' WHEN 7 THEN '31~35' WHEN 8 THEN '36~40' WHEN 9 THEN '41~45' WHEN 10 THEN '46~50' WHEN 11 THEN '51~55' WHEN 12 THEN '56~60' ELSE '>=60' END 'age distribution ',COUNT(*) 'total'FROM dbo.person p GROUP BY ( CASE ( ( ( CASE ( SIGN(CONVERT(VARCHAR(100),GETDATE() - DATEADD(year,112) - 19000101) ) WHEN 0 THEN DATEDIFF(year,GETDATE()) + 1 WHEN 1 THEN DATEDIFF(year,GETDATE()) + 1 WHEN -1 THEN DATEDIFF(year,GETDATE()) END ) - 1 ) / 5 + 1 ) WHEN 1 THEN '<20' WHEN 2 THEN '<20' WHEN 3 THEN '<20' WHEN 4 THEN '<20' WHEN 5 THEN '20~25' WHEN 6 THEN '25~30' WHEN 7 THEN '31~35' WHEN 8 THEN '36~40' WHEN 9 THEN '41~45' WHEN 10 THEN '46~50' WHEN 11 THEN '51~55' WHEN 12 THEN '56~60' ELSE '>=60' END )总结
以上是内存溢出为你收集整理的sqlserver根据年龄统计各年龄阶段的人数全部内容,希望文章能够帮你解决sqlserver根据年龄统计各年龄阶段的人数所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)