Как изменить значение ячейки данных только для запроса. Я не могу перевести этот запрос - PullRequest
0 голосов
/ 09 сентября 2018

Создайте список всех пассажиров (с указанием имени и фамилии) и комментарий с указанием, являются ли они ребенком или взрослым. Поле комментария должно называться «Возраст» и должно быть правильным на момент запуска запроса. Ребенку 18 лет.

SELECT firstname, lastname, 
    TRUNCATE((DATEDIFF(CURRENT_TIMESTAMP(), birthdate)/365),0) AS age
FROM Emp
WHERE IF TRUNCATE(((CURRENT_TIMESTAMP(), birthdate)/365),0)>= 18 CONVERT "Adult" ELSE "Child" ;

1 Ответ

0 голосов
/ 09 сентября 2018

Вы должны переместить эту логику if / else в список выбранных столбцов. (Или иногда один) правильный способ использовать такой условный вывод - использовать выражение CASE.

SELECT firstname,
       lastname, 
       CASE
         WHEN datediff(current_timestamp(), birthdate) / 365 >= 18 THEN
           'Adult'
         WHEN datediff(current_timestamp(), birthdate) / 365 >= 0 THEN
           'Child'
       END
       FROM emp;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...