私は比較的新しいSQLです。私は現在、次のCoursesTbl最小値と最大値を持たないSQL集計
StudentName CourseID InstructorName
Harry Potter 180 John Wayne
Harry Potter 181 Tiffany Williams
John Williams 180 Robert Smith
John Williams 181 Bob Adams
は、今、私が本当に欲しいものこれで持っている:私はこのクエリを試してみた
StudentName Course1(180) Course2(181)
Harry Potter John Wayne Tiffany Williams
John Williams Robert Smith Bob Adams
:
Select StudentName, Min(InstructorName) as Course1, Max(InstructorName) as
Course2 from CoursesTbl
Group By StudentName
は、今では私が必要とする私には明らかです学生名でグループ化する。しかしMinとMaxを使用するとインストラクターの指示が乱れる。
すなわちハリーのためMinはジョン・ウェインで、マックスはジョン・ウィリアムズのためのティファニーウィリアムズ
分では、ボブ・アダムスとマックスはロバート・スミスです。
したがって、インストラクターは正しい順序で表示されません。
これはどのように修正できますかお勧めしますか?
あなたが必要とするものは、集計関数ではなく、 'PIVOT'です。見てみましょう[ここ](https://blogs.msdn.microsoft.com/spike/2009/03/03/pivot-tables-in-sql-server-a-simple-sample/) –