2
/5
新建一个查询窗口
3
/5
在查询窗口中输入SQL Select 查询语句,查询表数据
4
/5
在步骤3中可以看到有很多重复的数据,可以使用SELECT DISTINCT 语句来对重复值进行过滤只保留唯一值
5
/5
执行后数据库就已经自动的过滤掉了重复值,只保留唯一值
需求说明
1、我需要查询某列不重复的数据
2、并且显示不重复数据的所有项
sql语句如下
select * from data group by address
如果是仅仅查询某列不重复数据,只需要一列
效果如下
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
这样就得到我们想要的结果集了:
查询按字段1不重复查询:select distinct 字段1 ,字段2,字段3 from Table
查询按字段2不重复查询:
select distinct 字段2 ,字段1,字段3 from Table
查询按字段3不重复查询:
select distinct 字段3 ,字段1,字段2 from Table
以此类推吧,,祝你好运!~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)