多表关联查询后 怎么删除 查出的数据

qq_17071143 2015-11-13 11:25:52
select
*
from
mims.dbo.enterCheckInfo entercheck0_
left outer join
mims.dbo.studentInfo studentinf1_
on entercheck0_.StudentID=studentinf1_.Id
left outer join
mims.dbo.classInfo classinfo2_
on studentinf1_.ClassId=classinfo2_.ClassID
left outer join
mims.dbo.schoolInfo schoolinfo3_
on classinfo2_.SchoolID=schoolinfo3_.SchoolID
where
1=1
and schoolinfo3_.SchoolID=classinfo2_.SchoolID
and classinfo2_.ClassID=studentinf1_.ClassId
and studentinf1_.Id=entercheck0_.StudentID
and schoolinfo3_.SchoolName='阳光新城小学'
and classinfo2_.Grade='三年级'
and classinfo2_.ClassName='四班'
and entercheck0_.CheckDate>='2015-08-01 00:00:01'
and entercheck0_.CheckDate<='2016-07-31 23:59:59'
order by
enterInfoDate DESC
上面多表关联查询后 查出的数据 怎么把他们 删除重复的(剩一条)呢?

--过滤重复记录(只显示一条)
Select * From Name Where id In (Select Max(ID) From Name Group By name,sex)
--删除(只显示一条)
Delete Name Where ID Not In (Select Max(ID) From Name Group By name,sex)
--SQl语句查询表中一个字段,去掉重复的记录
select distinct name,sex FROM Name

帮忙写一下吧
...全文
418 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Yole 2015-11-13
  • 打赏
  • 举报
回复

/*
-用 ROW_NUMBER() OVER(PARTITION BY name,sex  ORDER BY name,sex)
把编号不是1的删掉即可
*/
comma212164 2015-11-13
  • 打赏
  • 举报
回复
把不重复的找出来插入临时表,删除原来的数据,在从临时表插入过去

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧