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 2008 处理隐式数据类型转换在执行计划中的增强

触发器的特点是什么?

sql之 <>与 !=

左连接、右连接、内连接、全外连接的区别是什么?

利用navicat工具快速生成sql语句

数据库性能优化之sql语句优化

sql的select语句中用于实现选择运算的是什么

sql增删改查语句是什么?

数据库和sql是什么?两者的优势是什么

sql数据库怎么设置主键?

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



打赏

取消

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

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

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

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

评论

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