SQL实现多字段同时去重
首先创建一个表结构,其中数据如下:方法一:多次分组在去重查询时,distinct关键字只能返回它的目标字段,而无法同时返回其它字段,要想去重多字段,可以利用group by按照多列进行嵌套分组。根据去重的字段进行分组方法二:拼接说到去重,大家想到的肯定是distinct这个关键字,但这个关键字他只能对一个字段进行去重,那么如何同时根据这三个字段去重呢?办法就是把这三个字段拼接成一个字段进行去重,因
首先创建一个表结构,其中数据如下:
方法一:多次分组
在去重查询时,distinct关键字只能返回它的目标字段,而无法同时返回其它字段,要想去重多字段,可以利用group by按照多列进行嵌套分组。
根据去重的字段进行分组
方法二:拼接
说到去重,大家想到的肯定是distinct这个关键字,但这个关键字他只能对一个字段进行去重,那么如何同时根据这三个字段去重呢?办法就是把这三个字段拼接成一个字段进行去重,因为这三个字段拼接成一个字段了,那么我们就可以继续使用distinct关键字进行去重了。
Oracle中的SQL:
select distinct name||age||sex a name,age,sex from t_user
1
MySQL中的SQL
select distinct name,age,sex a name,age,sex from t_user
1
SQL Server中的SQL
--相同类型
select distinct name+age+sex a name,age,sex from t_user
1
2
需要注意的是,这三个拼接的字段必须是相同的类型
--不同类型
select distinct concat(name,age,sex) a name,age,sex from t_user
————————————————
版权声明:本文为CSDN博主「清平の乐」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/ZZQHELLO2018/article/details/103436811
更多推荐
所有评论(0)