私は学生番号、試験、評価のグレードと日数を持つトレーニング機関のデータを持っています。コンセプトは毎日(1日目〜7日目)の単一の研究であり、訓練が行われ、訓練の終わりにその研究の評価が行われます。 7日目以降、新しい研究が始まり、同じプロセスが実行されます。評価に基づいて、グレードが割り当てられます。SQL:複数日間の学年で少なくとも1レベルの改善があるかどうか確認してください
グレードのデータは、私は必要なもの1,2,3,4
になりますが、私は7
1日に1日目から研究の学生のためのいずれかの改善があるかどうかを確認する必要があり、少なくとも1つのレベルの改善があるとすれば、改善として分類する必要があります。
研究1評価で学生1年生
1日目:3
2日目:3
3日目:2以下の例シナリオ1のためのいくつかのシナリオであります
第4日2
第5日2
第6日27日目:2
日1
シナリオと比較すると、あなたは、学生が2日目の改善の1つのレベルを持っている以上のデータを確認した場合は2:
学生2で用グレード研究1評価
1日目:3
2日目:3
3日目:3
4日目:1
5日目:1
6日目:2
7日目:上記と同様に2
データは、3日目と比較して4日目に2レベルの改善を示す。
1日目〜7日目の改善レベルを調べる必要があります。改善がある場合は、改善されたとマークします。
1日目から7日目に改善が見られない場合は、Not Improvedとして分類する必要があります。
sql fiddleでテーブルを作成することができないため、refrence用のテーブルスクリプトを投稿しました。
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の場合はどうなりますか?それは改善かどうかを表していますか?改善の定義は明確ではない。 –
改善と見なされます。私は少なくとも一度は改善があるかどうかを見たいと思う。改善がある場合、それは問題をまったく浸しません。 –