mysql语句查询某列中不重复数据的所有项需求说明
1、我需要查询某列不重复的数据
2、并且显⽰不重复数据的所有项
sql语句如下
select * from data group by address;
如果是仅仅查询某列不重复数据,只需要⼀列
效果如下
sql语句
sql语句查询不包含select DISTINCT address from data
这⾥有⼀个⾮常⾮常需要注意的地⽅:
SELECT DISTINCT [字段名]后⾯不能再跟其他的字段,否则检索出来的记录仍然会含有重复项;
错误写法:
SELECT DISTINCT [字段名] ,[其他字段名] FROM [表名] WHERE [检索条件字句]
如果我们的记录集⾥还需要有其他字段值,那怎么办呢?
如果我们的记录集⾥还需要有其他字段值
实际上,我们完全可以⽤另⼀种办法来解决问题;只是需要⽤到⼦查询⽽已!
使⽤GROUP BY 分组
有⼀点需要注意:
使⽤带有GROUP BY字句的查询语句时,在SELECT列表指定的列要么是GROUP BY 指定的列,要么包含聚合组函数所以⽤这样⼀句SQL就可以去掉重复项了:
select * from msg group by terminal_id;
这样就得到我们想要的结果集了:
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论