distinct group by 去重查询

select * from dc_restaurants;  31  

select DISTINCT (restaurant_name),id from dc_restaurants ; 31 (会按照id和 restaurant_name 联合 去重 )

select DISTINCT (restaurant_name),id from dc_restaurants 
group by restaurant_name; 17

select restaurant_name,id from dc_restaurants 
group by restaurant_name; 17

-- 按照某个字段 进行 去重的 方式: 1. group by(不用关注要查询的字段 )
-- 2. distinct 要关注要查询的字段,如果想要查询其他非 去重字段,
-- 则需要group by 该去重字段,否则会按照多个字段进行联合去重

-- group by 分组 默认取 id 最小的那条记录 。。
-- distinct 去重 是按照 字段区分的。* 表示所有字段。单个字段是指
-- 去除该列 重复的数据。

distinct group by 去重查询

时间: 2024-08-13 03:50:41

distinct group by 去重查询的相关文章

sqlserver_query3_去重查询|模糊查询|排序|分组|使用函数

时间:2017-09-29 整理:byzqy 本篇仍以"梁山好汉"数据表为例,介绍几个常用的 T-SQL 查询语句: 去重查询,关键字:distinct 使用通配符模糊查询,关键字:like,通配符:% 排序查询(升序.降序),关键字:order by.desc 分组查询,关键字:group by 使用函数,关键字:max.avg 规定要返回的记录的数目,关键字:top 文件:SQLQuery3.sql /* 说明: SQLQuery3.sql (这是在SQL Server Manag

Oracle数据库,模糊查询、去重查询

分组去重查询,并执行某一个函数 :select  分组字段,聚合函数 from 表名 where 条件 group by分组字段 select  分组字段,聚合函数 from 表名 where 条件 group by分组字段 having过滤条件 例:select cno, avg(degree) from score group by cno having count(sno)>=5: 模糊查询  : like select * from 表名 where 字段 like   '字符串%'  

[django/mysql] 使用distinct在mysql中查询多条不重复记录值的解决办法

前言:不废话.,直接进入正文 正文: 如何使用distinct在mysql中查询多条不重复记录值? 首先,我们必须知道在django中模型执行查询有两种方法: 第一种,使用django给出的api,例如filter value distinct order_by等模型查询api; 代码:LOrder.objects.values('finish_time').distinct() 这里应注意,原官方文档中写到: 示例(第一个之后的示例都只能在PostgreSQL 上工作): >>> Au

mysql distinct&group by 应用

在使用mysql时,有时需要查询出某个字段不重复的记录,虽然mysql提供 有distinct这个关键字来过滤掉多余的重复记录只保留一条,但往往只用它来返回不重复记录的条数,而不是用它来返回不重记录的所有值.其原因是 distinct只能返回它的目标字段,而无法返回其它字段,这个问题让我困扰了很久,用distinct不能解决的话,我只有用二重循环查询来解决,而 这样对于一个数据量非常大的站来说,无疑是会直接影响到效率的.所以我花了很多时间来研究这个问题,网上也查不到解决方案 下面先来看看例子:

group by 分组去重查询

数据库中的数据是这样的: 想要看看有几种类型,可以用group by: select * from activiti.act_ru_task where PROC_INST_ID_ in (select PROC_INST_ID_ FROM activiti.act_ru_execution where BUSINESS_KEY_ in (select a.app_id from bill_data.t_org_br_apply_info a left join user.t_user_info

mysql count distinct 统计结果去重

mysql的sql语句中,count这个关键词能统计表中的数量,如 有一个tableA表,表中数据如下: id name age 1 tony 18 2 jacky 19 3 jojo 18 SELECT COUNT(age) FROM tableA 以上这条语句能查出table表中有多少条数据.查询结果是3 而COUNT这个关键词与 DISTINCT一同使用时,可以将统计的数据中某字段不重复的数量. 如: SELECT COUNT(DISTINCT age) from tableA 以上语句的

重复数据分析的三个常用语法distinct, group by, partition by

由于数据经常会出现重复现象,数据去重是数据分析中常用操作之一,而distinct,group by, partition by三者都可以实现去重功能,实践中需要根据不同的场景需求来选取相应的语法. distinct: 只需要去除重复数据,保留无重复数据 group by:可以根据需要查看哪些数据是重复的 partition by:功能最为强大,可以给重复数据排序,结合外层嵌套语句,可实现按需过滤不需要的数据.

MySQL使用GROUP BY后查询总记录数

test表 要查出某个用户具有哪些操作,即把操作进行组合 以下的SQL可以达到目的 SELECT NAME,GROUP_CONCAT(operation) AS operation FROM test GROUP BY NAME 接着要查出这样的用户有多少个,直接在SELECT后加上COUNT()函数已经不起作用了. 一种解决方式是把查询结果当作一张表,在外层用SELECT COUNT(*) SELECT COUNT(*) FROM ( SELECT NAME,GROUP_CONCAT(oper

Group by 分组查询 实战

实战经历,由于本人在共享单车上班,我们的单车管理模块,可以根据单车号查询单车,但是单车号没有设置unique(独一无二约束),说以这就增加了单车号可能重复的风险,但是一般情况下,单车号是不会重复的,因为平台的单车都是人工录入的,但是二般情况下,就会出现,一旦出现,那么就shit了,很不幸,今天就出现了这个问题,“一个单车号,可以在单车管理模块查出来有两条记录”这个时候,我们就必须把出现这种问题的单车号,再次手动编辑改变,由于数据库里,单车管理表里有成千上万个单车,但是,都有哪一个单车号出现了两次