Как собрать вместе 2 новых дополнительных столбца, созданных с помощью оператора case в SQL - PullRequest
0 голосов
/ 10 ноября 2019
SELECT 
    ScheduledStartDate, ActualStartDate, ScheduledEndDate, ActualEndDate,
    CASE 
       (WHEN ActualStartDate > ScheduledStartDate THEN 'started late'
        WHEN ActualStartDate < ScheduledStartDate THEN 'started early'
        WHEN ScheduledStartDate = ActualStartDate then 'started on time'
    END AS startDescription )
    ELSE
    CASE 
      (WHEN ActualEndDate < ScheduledEndDate THEN 'finished late'
       WHEN ActualEndDate > ScheduledEndDate THEN 'finished early'
       WHEN ActualEndDate = ScheduledEndDate THEN 'finished on time'
    END AS endDescription )
FROM
    [Production].[WorkOrderRouting];

Я сделал 4 столбца и хочу добавить 2 новых столбца, сделанных с помощью оператора case.

1 Ответ

1 голос
/ 10 ноября 2019

Сделайте каждое CASE выражение отдельным столбцом:

SELECT
    ScheduledStartDate,
    ActualStartDate,
    ScheduledEndDate,
    ActualEndDate,
    CASE WHEN ActualStartDate > ScheduledStartDate THEN 'started late'
         WHEN ActualStartDate < ScheduledStartDate THEN 'started early'
         WHEN ActualStartDate = ScheduledStartDate THEN 'started on time' END AS startDescription,
    CASE WHEN ActualEndDate < ScheduledEndDate THEN 'finished late'
         WHEN ActualEndDate > ScheduledEndDate THEN 'finished early'
         WHEN ActualEndDate = ScheduledEndDate THEN 'finished on time' END AS endDescription
FROM [Production].[WorkOrderRouting];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...