回答
SELECT *
FROM Employees
WHERE DATEPART(d, DateOfBirth) = DATEPART(d, GETDATE())
AND DATEPART(m, DateOfBirth) = DATEPART(m, GETDATE())
WHERE
今天的月份和日期(显然)员工生日匹配的月份和日期。更具体的指示将需要更多的投入。
你可以做这样的事情:
select e.name from employeeTable e
where right(e.birthday) = right(convert(varchar(8), getdate(), 112), 4)
或
select e.name from employeeTable e
where datepart(d, e.birthday) = datepart(d, getdate())
and datepart(m, e.birthday) = datepart(m, getdate())
afaik这也将在生日字段上进行混淆和索引。 – MatBailie 2012-01-10 13:33:52
@Dems我一直忘记:) – 2012-01-10 13:35:53
理想上的数据源,将有助于结构更多的信息,但一个简单的答案,提供您的员工记录有一个DOB字段将在查询的where子句中将此日期和月份与当前系统日期进行比较。
东西大致如下:
select * from wherever
where
....
(
datepart(d, EmployeeDOB) = datepart(d, getdate()) and
datepart(m, EmployeeDOB) = datepart(m, getdate())
)
.....
嘿安迪,thnx很多.... 我得到它的工作.. :) – 2012-01-10 13:41:12
@VishalAvhad - 请注意,此选项混淆了INDEX,并将强制进行全表扫描。如果你有大量的记录,这将是一个很大的开销。 – MatBailie 2012-01-10 13:45:46
虽然这是更为长篇大论,它避免必须扫描整个表寻找匹配。
WITH
a_century AS
(
SELECT 1 AS year
UNION ALL
SELECT year * 2 + 0 AS year FROM a_century WHERE year < 64
UNION ALL
SELECT year * 2 + 1 AS year FROM a_century WHERE year < 64
)
SELECT
*
FROM
yourTable
INNER JOIN
a_century
ON yourTable.birthday = DATEADD(year, -a_century.year, DATEADD(day, DATEDIFF(day, 0, getDate()), 0))
- 1. SQL查询,如果日期是接近今天
- 2. SQL查询检查到期日期是从今天3天?
- 3. 今天的日期发生变化的SQL查询
- 4. PHP:生日检查今天的日期
- 5. 如何计算,如果工作日是超过6天,从今天的日期
- 6. 如果今天是日期,Echo警报
- 7. SQL查询在哪里日期=今天减7天
- 8. 检查今天的日期与SQL查询
- 9. 根据今天的日期查询
- 10. 检查日期,如果今天,回到今天或正常日期
- 11. PHP:如何检查日期是今天,昨天还是明天
- 12. sqlite的 - 检查如果今天是2个日期
- 13. Joomla JFactory查询返回今天的日期后的结果
- 14. 如何在PHP检查,如果今天是“到期日”
- 15. 用于查询元素是否在今天'X'天内附加的SQL查询
- 16. 与今天的日期选择项的SQL查询
- 17. 基于今天的日期的SQL查询
- 18. 通过今天(当前)日期显示数据的SQL查询?
- 19. 使用datetime2在今天的日期SQL Server查询
- 20. Dynamics CRM FetchXML - 今天是生日
- 21. 帮助与SQL查询 - 在桌子上的状元秀今天生日
- 22. SQL查询,以便从今天
- 23. SQL找到今天,明天和昨天生日
- 24. 在SQL(MySQL)中返回基于今天日期的查询结果
- 25. 如何检查今天是否是Java日历的星期日
- 26. 如何检查今天的日期=从SQL日期?
- 27. 如果行的日期=今天()
- 28. 如果今天是天,jQuery - addClass
- 29. SQL查询结果集,我需要在今天
- 30. 得到的sql结果的时间戳日期是从今天起的n天
直接回答你的问题......“是” – SQLMason 2012-01-10 13:22:09
@DanAndrews,并不是无条件:) – 2012-01-10 13:23:10