Неизвестный столбец каждый создает псевдоним и использует этот псевдоним в другом запросе - PullRequest
0 голосов
/ 06 мая 2020

Меня это немного смущает, почему каждый раз, когда я делаю какой-то псевдоним из функции запроса, я всегда получаю сообщение неизвестного столбца, когда я использую этот псевдоним в другом запросе функции, находится в mysql псевдоним не может использоваться по запросу другой функции? Например, я помещаю запрос ниже:

  • Запрос неизвестного столбца:

    SELECT
       CASE 
          WHEN TIME >= '06:15:00' AND TIME < '12:00:00' THEN 'in' ELSE 'out' 
       END in_out ,
       DATE(MAX(CASE WHEN in_out = 'IN'  THEN date_time END)) AS attendance_date,
       MAX(CASE WHEN in_out = 'IN'  THEN date_time END) AS time_in,
       MAX(CASE WHEN in_out = 'OUT' THEN date_time END) AS time_out
    FROM raw_attendance
    
  • Результат неизвестного столбца:

    `Unknown column 'in_out' in 'field list'`
    
  • Без псевдонима:

    SELECT
    CASE WHEN TIME >= '06:15:00' AND TIME < '12:00:00' THEN 'in' ELSE 'out' END in_out ,
    DATE(MAX(CASE WHEN CASE WHEN TIME >= '06:15:00' AND TIME < '12:00:00' THEN 'in' ELSE 'out' END = 
    'IN'  THEN date_time END)) AS attendance_date,
    MAX(CASE WHEN CASE WHEN TIME >= '06:15:00' AND TIME < '12:00:00' THEN 'in' ELSE 'out' END = 'IN'  
    THEN date_time END) AS time_in,
    MAX(CASE WHEN CASE WHEN TIME >= '06:15:00' AND TIME < '12:00:00' THEN 'in' ELSE 'out' END = 'OUT' 
    THEN date_time END) AS time_out
    FROM raw_attendance
    
  • Без использования псевдонима Результат:

    +-----------------+-----------------------+-----------------------+-----------------------+
    +      in_out     +    attendance_date    +        time_in        +       time_out        +
    +-----------------+-----------------------+-----------------------+-----------------------+
    +        in       +       2020-05-05      +  2020-05-05 07:55:00  +  2020-05-05 21:55:00  +
    +-----------------+-----------------------+-----------------------+-----------------------+  
    
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...