2013-06-20 2 views
0

у меня есть эта таблица:месяц ближайший фактический месяц

Players: 
ID (int) 
Birthday (datetime) 

мне нужно выбрать 3 первых игроков, которые имеют день рождения в действительном месяц ... У меня есть это, но результат ничего .. Есть ли у Вас идея?

SELECT * 
FROM Players 
WHERE Birthday < DATEADD(month, -2, GETDATE()) 

ответ

1

Использование синтаксиса SQL Server:

select top 3 * 
from YourTable 
where datepart(month, Birthday) = datepart(month, getdate()) 
+0

Да, ОК, спасибо! :) – Kate

3

Вы должны использовать функцию DATEPART в SQL сервере

SELECT * 
FROM Players 
WHERE DATEPART(MM,Birthday) = DATEPART(MM,GETDATE()) 
+1

Кейт говорит: мне нужно выбрать 3 первых игроков. ваш запрос вернет 3 первых игрока? – Rezoan

Смежные вопросы