我有一個培訓機構的數據,其中我將有學生人數,學習,評估等級和天數。這個概念是每天(第1天到第7天)進行單一研究,將會有培訓發生,培訓結束時我們將對該研究進行評估。第7天后,將開始一項新的研究,並進行相同的過程。基於評估,將分配一個等級。SQL:檢查是否有多個級別之間的年級至少有1個級別的改善
甲級數據將是1,2,3,4
我需要的是,我需要檢查是否是有從1天學習的學生當天任何改善7.
如果至少有一個改進水平說,我需要將其分類爲改進。下面是例如
方案1幾種情況:
在研究評估1年級學生1
日1:3
日2:3
第3天:2第4天:2
第5天:2
第6天:2日7:2
如果你比較1天
情景時,檢查上面的數據學生有第2天提高一個等級2:
年級學生2該研究評估1
日1:3
日2:3
第3天:3
第4天:1
日5:1
日6:2
天7:2
同樣地,在上述與第3天相比,學生在第4天有兩個改善水平的數據:
所以我需要找出第一天到第七天的改善水平,如果有改善,我會標記爲改進的學生。
如果從第1天到第7天沒有任何改善,它必須被歸類爲未改進。
我已經發布了我的refrence表格腳本,因爲我無法在sql小提琴中創建表格。
CREATE TABLE [DataBook1](
\t [FolderName] [varchar](50) NULL,
\t [Grade] [varchar](50) NULL,
\t [InstituteCode] [varchar](50) NULL,
\t [StudentNumber] [varchar](50) NULL,
\t [StudyNo] [varchar](50) NULL
) ON [PRIMARY]
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 6', N'1', N'80-02', N'80-02-001', N'Study 2')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 1', N'1', N'80-02', N'80-02-001', N'Study 3')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 2', N'1', N'80-02', N'80-02-001', N'Study 3')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 3', N'1', N'80-02', N'80-02-001', N'Study 3')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 4', N'1', N'80-02', N'80-02-001', N'Study 3')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 5', N'1', N'80-02', N'80-02-001', N'Study 3')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 6', N'1', N'80-02', N'80-02-001', N'Study 3')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 4', N'1', N'80-02', N'80-02-001', N'Study 4')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 5', N'1', N'80-02', N'80-02-001', N'Study 4')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 6', N'1', N'80-02', N'80-02-001', N'Study 4')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 1', N'2', N'80-02', N'80-02-001', N'Study 1')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 2', N'2', N'80-02', N'80-02-001', N'Study 1')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 3', N'2', N'80-02', N'80-02-001', N'Study 1')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 4', N'2', N'80-02', N'80-02-001', N'Study 1')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 5', N'2', N'80-02', N'80-02-001', N'Study 1')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 6', N'2', N'80-02', N'80-02-001', N'Study 1')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 2', N'2', N'80-02', N'80-02-001', N'Study 2')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 3', N'2', N'80-02', N'80-02-001', N'Study 2')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 4', N'2', N'80-02', N'80-02-001', N'Study 2')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 5', N'2', N'80-02', N'80-02-001', N'Study 2')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 7', N'2', N'80-02', N'80-02-001', N'Study 2')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 7', N'2', N'80-02', N'80-02-001', N'Study 3')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 1', N'2', N'80-02', N'80-02-001', N'Study 4')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 2', N'2', N'80-02', N'80-02-001', N'Study 4')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 3', N'2', N'80-02', N'80-02-001', N'Study 4')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 7', N'2', N'80-02', N'80-02-001', N'Study 4')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 7', N'3', N'80-02', N'80-02-001', N'Study 1')
GO
INSERT [DataBook1] ([FolderName], [Grade], [InstituteCode], [StudentNumber], [StudyNo]) VALUES (N'Day 1', N'3', N'80-02', N'80-02-001', N'Study 2')
GO
我試圖用ROW_NUMBER切換功能可獲取前行的值,但是我沒能得到我想要的輸出。
任何幫助,高度讚賞。
如果學生從1-4-2變成什麼樣子?這是否代表改善?改善的定義不明確。 –
這將被視爲改進。我想看看是否至少有一次改善。如果有改進,那麼它沒有問題。 –