sql 如何过滤重复记录 问题背景在一个多表查询的sql中正常情况下产生的数据都是唯一的,但因为数据库中存在错误(某张表中存在相同的外键ID)导致我这边查询出来的数据就会有重复的问题下面结果集中UserID:15834存在多个查询Sql如下:SELECT*FROM(SELECT ROW_NUMBER()OVER(ORDER BY T.USERID asc)AS RowT.USERIDT.CreateTimeFROM UserInfo TLEFT JOIN DiseaseInfo i ON i.UserID=T.UserIDTT WHERE TT.Row between 0 AND 20 ORDER BY UserID DESC解决方法:参考下面新的解决方案在网络上了解到MSSql中通过关键字“PARTITION BY”可以将查询结果集进行分区处理,然后在查询结果集时就可以过滤掉重复的记录了(如果有指定分区字段则区ID相同)通过更改后的Sql,在Over中添加PARTITION BY T.USERID以UserID进行分区,然后在查询结果集时通过DISTINCT ROW,过滤掉重复的分区ID号SELECT DISTINCT ROW,*FROM(SELECT ROW_NUMBER()OVER(PARTITION BY T.USERID ORDER BY T.USERID asc)AS RowT.USERIDT.CreateTimeFROM UserInfo TLEFT JOIN DiseaseInfo i ON i.UserID=T.UserIDTT WHERE TT.Row between 0 AND 12 ORDER BY UserID DESC查询时未过滤重复分区IDDISTINCT ROW,下面的结果集跟上面。
什么胶的粘性适中而且可以重复使用不易失效,谢谢大家为我解答。
Word文档重复标题行失效了怎么办,Word是微软公司的一个文字处理器应用程序,给用户提供了用于创建专业而优雅的文档工具,帮助用户节省时间。下面小编就来告诉大家Word文档。