sql根据多个字段去重查询 返回所有字段 刺骨的言语ヽ痛彻心扉 2023-01-06 01:21 158阅读 0赞 book表中的数据: ![在这里插入图片描述][20210113160446924.png] 根据所有字段去重: SELECT DISTINCT * from dbo.book sql根据多个字段去重: SELECT title,isbn,author_id ,page_count from dbo.book group by title,isbn,author_id ,page_count 或者: SELECT DISTINCT title,isbn,author\_id ,page\_count from dbo.book ![在这里插入图片描述][20210113162615543.png] sql根据多个字段去重,并且返回所有字段: SELECT * from dbo.book a where id in (SELECT max(id) from dbo.book group by title,isbn,author_id ,page_count ) 如果数据量比较大的话in会有效率问题,可以采用以下写法 SELECT a.* from dbo.book a , (SELECT max(id) as id from dbo.book group by title,isbn,author_id ,page_count )b where a.id = b.id ![在这里插入图片描述][20210113162734150.png] 有问题欢迎指正 [20210113160446924.png]: /images/20221119/50da12d4d96b4a1bb90be33e28ab027a.png [20210113162615543.png]: /images/20221119/28e85f87ee294a20914675c8dfdd5ade.png [20210113162734150.png]: https://img-blog.csdnimg.cn/20210113162734150.png
还没有评论,来说两句吧...