惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

B
Blog
V
Vulnerabilities – Threatpost
Apple Machine Learning Research
Apple Machine Learning Research
V
V2EX
博客园 - 叶小钗
阮一峰的网络日志
阮一峰的网络日志
人人都是产品经理
人人都是产品经理
Latest news
Latest news
博客园 - 三生石上(FineUI控件)
美团技术团队
aimingoo的专栏
aimingoo的专栏
Google Online Security Blog
Google Online Security Blog
Security Archives - TechRepublic
Security Archives - TechRepublic
T
Threatpost
Y
Y Combinator Blog
T
Tailwind CSS Blog
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
A
Arctic Wolf
C
Cyber Attacks, Cyber Crime and Cyber Security
小众软件
小众软件
Recent Commits to openclaw:main
Recent Commits to openclaw:main
T
Tenable Blog
W
WeLiveSecurity
L
LINUX DO - 热门话题
D
Docker
Cyberwarzone
Cyberwarzone
量子位
A
About on SuperTechFans
The Last Watchdog
The Last Watchdog
雷峰网
雷峰网
C
CERT Recently Published Vulnerability Notes
P
Palo Alto Networks Blog
The Hacker News
The Hacker News
Blog — PlanetScale
Blog — PlanetScale
P
Proofpoint News Feed
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
F
Full Disclosure
The Cloudflare Blog
T
The Blog of Author Tim Ferriss
T
The Exploit Database - CXSecurity.com
Engineering at Meta
Engineering at Meta
O
OpenAI News
Hacker News - Newest:
Hacker News - Newest: "LLM"
Scott Helme
Scott Helme
IT之家
IT之家
S
Secure Thoughts
MongoDB | Blog
MongoDB | Blog
L
Lohrmann on Cybersecurity
博客园 - 司徒正美
Google DeepMind News
Google DeepMind News

博客园 - kenly33

ORM及代码生成器和插件C#源码(最新版Kenly.DBFramework4.5.8.5) 處理RadioButtonList客戶端事件 - kenly33 - 博客园 对象关系映射架构(DBFramework)及代码生成器和插件(源码) 使對象支持自定義比較 統計分數 讀寫XML文檔 - kenly33 - 博客园 Visual Studio Team System简介 MultiFileUploador GridViewNavigator Gridview梆定 兩個輸入框只允許一個輸入 Gridview中梆定得RadioButton Javascript 隱藏或顯示某區域 ASP.NET 2.0中合并 GridView 的表头单元格 VS2005 RESOURCE MANAGEMENT 鲸鱼哲学 Javascript彈出對話框 FxCop Rules Atlas使用演练
过滤某些字段重复的记录
kenly33 · 2007-06-03 · via 博客园 - kenly33

过滤某些字段重复的记录

CREATE PROCEDURE usp_UniqueAttendRecord (@BeginTime DATETIME,@EndTime DATETIME) 
 AS

SELECT DeptCode,EmpCode,MIN(PDATE) AS 'PDATE' INTO #InTimes FROM attend
WHERE  PDate>@BeginTime AND  PDate<@EndTime AND  iomode='I'
GROUP BY DeptCode,EmpCode,iomode,DATEPART(DAY,PDate)

SELECT DeptCode,EmpCode,MAX(PDATE) AS PDATE INTO #OutTimes FROM attend
WHERE  PDate>@BeginTime AND  PDate<@EndTime AND iomode='O'
GROUP BY DeptCode,empcode,iomode,DATEPART(DAY,PDate)

SELECT A.DeptCode,A.EmpCode,A.PDate AS 'InTime',B.PDate AS 'OutTime'
FROM  #InTimes AS A
LEFT JOIN #OutTimes AS B ON A.EmpCode=B.EmpCode AND DATEPART(YEAR,A.PDate)=DATEPART(YEAR,B.PDate)  AND DATEPART(MONTH,A.PDate)=DATEPART(MONTH,B.PDate) AND DATEPART(DAY,A.PDate)=DATEPART(DAY,B.PDate)
UNION
SELECT A.DeptCode,A.EmpCode,B.PDate AS 'InTime',A.PDate AS 'OutTime'
FROM  #OutTimes AS A
LEFT JOIN #InTimes AS B ON A.EmpCode=B.EmpCode AND DATEPART(YEAR,A.PDate)=DATEPART(YEAR,B.PDate)  AND DATEPART(MONTH,A.PDate)=DATEPART(MONTH,B.PDate) AND DATEPART(DAY,A.PDate)=DATEPART(DAY,B.PDate)
ORDER BY A.DeptCode,A.EmpCode

DROP TABLE #InTimes
DROP TABLE #OutTimes