Sql中distinct只作用于一个字段的方法


distinct的作用是去除重复记录,然而当需要对order by的结果进行distinct的时候,又必须将order by的字段加入到distinct中:

Sql中distinct只作用于一个字段的方法

而如果同时取2个字段的值,就只能消除这2个字段值全部相同的记录。

解决办法(假如要从按字段B降序排列的表中消除重复的字段A):

SELECT 字段A,字段B FROM 表 
WHERE 字段A IN(SELECT MAX(字段A) FROM 表 GROUP BY 字段B) 
order by 字段A desc

这样问题就解决了。

相关阅读 >>

sql server中分区表的用法

sql的临时表使用小结

用asp和sql实现基于web的事件日历

sql server 索引结构及其使用(一)--深入浅出理解索引结构第24页

sql查询至少连续n天登录的用户

sql中的distinct和top合用

如何进行sql注入

更新基本表中的记录使用的sql命令是什么

sparksql配置及使用教程

mysql中正则表达式regexp常见用法

更多相关阅读请进入《sql》频道 >>


数据库系统概念 第6版
书籍

数据库系统概念 第6版

机械工业出版社

本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...