У меня есть запрос Teradata, который будет выводить максимум три разных типа данных в общем поле в 3 отдельных записи. В настоящее время я использую оператор Case, чтобы разбить эти общие поля на уникальные поля, однако на выходе по-прежнему 3 записи на человека.
Это результат текущей инструкции Case, описанной в следующем разделе:
У меня есть изображения, которые показывают текущий набор данных, но у меня нет очков репутации, чтобы можно было их публиковать.
Вот текущий оператор Case, который достигает результата получения каждого набора тестовой информации в правильные столбцы на основе названия теста:
,CASE WHEN Test = 'Biology' THEN BiologyName ELSE null END As "Biology Test Name"
,CASE WHEN Test = 'Biology' THEN BiologyDate ELSE null END as "Biology Test Date"
,CASE WHEN Test = 'Biology' THEN BiologyResult ELSE null END as "Biology Test Result"
,CASE WHEN Test = 'Calculus' THEN CalculusName ELSE null END As "Calculus Test Name"
,CASE WHEN Test = 'Calculus' THEN CalculusDate ELSE null END as "Calculus Test Date"
,CASE WHEN Test = 'Calculus' THEN CalculusResult ELSE null END as "Calculus Test Result"
,CASE WHEN Test = 'Language Arts' THEN LanguageArtsName ELSE null END As "LA Test Name"
,CASE WHEN Test = 'Language Arts' THEN LanguageArtsDate ELSE null END as "LA Test Date"
,CASE WHEN Test = 'Language Arts' THEN LanguageArtsResult ELSE null END as "LA Test Result"
Рассмотрим следующее изображение, где данные слева (Cols A-D) - это токовый выход, а Cols F-O - желаемый выход:
У меня есть изображения, которые показывают текущий набор данных, но у меня нет очков репутации, чтобы можно было их публиковать.