求助大佬,sql语法
sql吧
全部回复
仅看楼主
level 3
Cc_JayCay 楼主
求助 计算右侧 小于该月份的人头数 SQL语言
2024年06月21日 10点06分 1
level 4
写个sqlserver的
IF OBJECT_ID('tempdb..#A') IS NOT NULL
BEGIN
DROP TABLE #A
END
SELECT CURRENT_TIMESTAMP 日期,'A' 员工 INTO #A
DELETE #A
INSERT INTO #A SELECT '2024-01-01','A'
INSERT INTO #A SELECT '2024-01-02','B'
INSERT INTO #A SELECT '2024-01-03','A'
INSERT INTO #A SELECT '2024-01-04','C'
INSERT INTO #A SELECT '2024-01-05','D'
INSERT INTO #A SELECT '2024-02-04','A'
INSERT INTO #A SELECT '2024-02-05','B'
INSERT INTO #A SELECT '2024-02-06','A'
INSERT INTO #A SELECT '2024-02-07','C'
INSERT INTO #A SELECT '2024-02-08','D'
INSERT INTO #A SELECT '2024-02-09','C'
INSERT INTO #A SELECT '2024-02-10','E'
INSERT INTO #A SELECT '2024-03-10','A'
INSERT INTO #A SELECT '2024-03-11','B'
INSERT INTO #A SELECT '2024-03-12','A'
INSERT INTO #A SELECT '2024-03-13','C'
INSERT INTO #A SELECT '2024-03-14','D'
INSERT INTO #A SELECT '2024-03-15','C'
INSERT INTO #A SELECT '2024-03-16','E'
INSERT INTO #A SELECT '2024-03-17','F'
INSERT INTO #A SELECT '2024-03-18','G'
INSERT INTO #A SELECT '2024-04-19','A'
INSERT INTO #A SELECT '2024-04-20','B'
INSERT INTO #A SELECT '2024-04-21','A'
INSERT INTO #A SELECT '2024-04-22','C'
INSERT INTO #A SELECT '2024-04-23','D'
INSERT INTO #A SELECT '2024-04-24','C'
INSERT INTO #A SELECT '2024-04-25','E'
INSERT INTO #A SELECT '2024-04-26','F'
INSERT INTO #A SELECT '2024-04-27','G'
SELECT B.月份,COUNT(DISTINCT #A.员工)
FROM (SELECT FORMAT((DATEADD(MONTH,1,日期)),'yyyy-MM') 月份 FROM #A GROUP BY FORMAT((DATEADD(MONTH,1,日期)),'yyyy-MM')) B
INNER JOIN
#A ON B.月份 > FORMAT(#
A.日期,'yyyy-MM')
GROUP BY B.月份
2024年06月25日 04点06分 2
真长 大佬[真棒]
2024年06月29日 08点06分
level 1
用分析函数lag函数很容易求出。偷偷告诉你,sql最好的教程是,csdn莫叫石榴姐的sql进阶教程,里面总结了很多sql实战技巧,我平时做的很多需求疑难杂症都是跟石榴姐学的,里面很多都是来自于平时业务及大厂面试题,很多大厂的面试题或原型都来自于石榴姐的博客[吐舌][吐舌]
2024年08月07日 15点08分 4
level 6
魔怔
了?
2024年10月15日 04点10分 5
1