book表中的数据:
根据所有字段去重:
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
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
有问题欢迎指正