Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Сконструиовать запрос  [new]
sibex111
Member

Откуда:
Сообщений: 6
Сконструируйте запрос, возвращающий список сотрудников (таблица Employee) с указанием их EmployeeID, даты рождения (в формате dd.mm.yyyy) и возраста на сегодняшний день.

Указание: для конвертирования значения одного типа в значение другого типа используется функция: CONVERT (тип, выражение [, стиль]).
1 окт 18, 19:36    [21691788]     Ответить | Цитировать Сообщить модератору
 Re: Сконструиовать запрос  [new]
Щукина Анна
Member

Откуда:
Сообщений: 1467
sibex111,

что именно непонятно? как пробовали? что не получилось?
1 окт 18, 19:37    [21691793]     Ответить | Цитировать Сообщить модератору
 Re: Сконструиовать запрос  [new]
Посетитель
Member

Откуда:
Сообщений: 1209
sibex111
Сконструируйте запрос, возвращающий список сотрудников (таблица Employee) с указанием их EmployeeID, даты рождения (в формате dd.mm.yyyy) и возраста на сегодняшний день.

Указание: для конвертирования значения одного типа в значение другого типа используется функция: CONVERT (тип, выражение [, стиль]).


готово
1 окт 18, 21:38    [21691918]     Ответить | Цитировать Сообщить модератору
 Re: Сконструиовать запрос  [new]
Lepsik
Member

Откуда: glubinka
Сообщений: 4256
with Employee(employee_id, birthday) as
(
    select 1 as employee_id, dateadd(day, (abs(CHECKSUM(newid())) % 3650) * -1, getdate()) as birthday
    union all
    select Employee.employee_id + 1, dateadd(day, (abs(CHECKSUM(newid())) % 3650) * -1, getdate())
    from Employee where Employee.employee_id < 10
)
select employee_id, CONVERT( varchar(10), birthday, 104) AS birthday
     ,  DATEDIFF(yy, birthday, getdate()) - CASE WHEN MONTH(birthday) > MONTH(GETDATE()) OR 
                (MONTH(birthday) = MONTH(GETDATE()) AND DAY(birthday) > DAY(GETDATE())) THEN 1 ELSE 0 END from  Employee
1 окт 18, 23:18    [21691972]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить