日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

SQL查询即将合同即将到期的员工

發(fā)布時(shí)間:2024/3/26 数据库 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 SQL查询即将合同即将到期的员工 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

在項(xiàng)目開發(fā)過程中,我們經(jīng)常需要查詢某些即將到期的資源信息,并給相關(guān)的人通過郵件等形式進(jìn)行提醒。這類需求非常普遍,今天寫了一個(gè)Demo,能夠代表這類問題的解決方案,結(jié)合輪詢機(jī)制,能夠很好滴解決此類問題。

1.創(chuàng)建數(shù)據(jù)

ps:這里涉及到了表變量及Union All語法,不明白的請自行腦補(bǔ)!

傳送門:

1.表變量

http://database.51cto.com/art/201011/233290.htm

2.Union 和 Union All

http://www.w3school.com.cn/sql/sql_union.asp

--Insert test records INSERT INTO @Employees SELECT 'Ryan', '1972-06-01' UNION ALL SELECT 'James', '1985-06-02' UNION ALL SELECT 'Jasson', '1983-06-03' UNION ALL SELECT 'Tara', '1991-06-04' UNION ALL SELECT 'William', '1992-06-05' UNION ALL SELECT 'Judy', '1989-06-06' UNION ALL SELECT 'Justin', '1989-06-07';
2.設(shè)置間隔日期

--Variable to provide required number of days DECLARE @IntervalDays INT; SET @IntervalDays = 3;
3.查詢結(jié)果

SELECT * FROM @Employees WHERE DATEADD( Year, DATEPART( Year, GETDATE()) - DATEPART( Year, ExpiredDate), ExpiredDate)BETWEEN CONVERT( DATE, GETDATE()) AND CONVERT( DATE, GETDATE() + @IntervalDays);
4.通常都是查詢一周內(nèi)即將到期的,我們可以使用如下sql

SELECT * FROM @Employees WHERE DATEPART( Week, DATEADD( Year, DATEPART( Year, GETDATE()) - DATEPART( Year, ExpiredDate), ExpiredDate))= DATEPART( Week, GETDATE());

第一種和第二種sql查詢結(jié)果如下:



總結(jié)

以上是生活随笔為你收集整理的SQL查询即将合同即将到期的员工的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。