15.将入职日期作为生日,显示没有过生日的员工记录及还差几天过生日
时间: 2024-02-11 14:04:10 浏览: 85
好的,针对你的问题,你可以使用以下 SQL 语句来实现:
```
SELECT
CONCAT(first_name, ' ', last_name) AS employee_name,
DATEDIFF(DATE_FORMAT(DATE_ADD(birth_date, INTERVAL(YEAR(CURDATE())-YEAR(birth_date)) YEAR), '%Y-%m-%d'), CURDATE()) AS days_till_birthday
FROM
employees
WHERE
birth_date != '0000-00-00' AND
DATE_FORMAT(birth_date, '%m-%d') != DATE_FORMAT(CURDATE(), '%m-%d')
ORDER BY
days_till_birthday ASC;
```
这个 SQL 查询语句将会查询员工表中生日不是今天且入职日期作为生日的员工记录,然后计算出还差多少天到这个员工的生日,按照天数的顺序进行排序,最后返回每个员工的姓名和距离生日还有多少天。
希望我的回答能够帮到你!
阅读全文