2013-11-16 3 views
-1

года я пытаюсь извлечь данные, основанные на:SQL Server: день рождения Leap

Sql запрос для отображения списка сотрудников, чьи имя начинается с буквой «е» и годом рождения должно быть високосным.

пытался функция uisng, если только для високосного года (помощь от одного из моих сверстников)

CREATE FUNCTION leapyear (@year INT) 
RETURNS INT 
AS 
BEGIN 
RETURN(IIF(DATEPART(dd,(EOMONTH(CONCAT(@year,'0201')))) = 29,1,0)) 
END 

Но когда нам нужно имя вместе с годом, что делать.

Более помимо использования функции есть ли простой способ сделать это (Привлекая меньше коды)

ответ

0

Поскольку вы не предоставили достаточно подробной информации в вашем вопросе о том, как вы сохраняете год рождения. Я просто пытаюсь помочь вам обеспечить это условие, чтобы проверить, если год високосный год:

CASE WHEN (@YEAR % 4 = 0 AND @YEAR % 100 <> 0) OR @YEAR % 400 = 0 THEN 'LEAP YEAR' 

А также добавить условие Name like 'f%' для отображения списка сотрудников, чье имя начать с буквы «F»

Что-то вроде этого:

select * from employees 
where ((@YEAR % 4 = 0 AND @YEAR % 100 <> 0) OR @YEAR % 400 = 0) 
and Name like 'f%' 
Смежные вопросы