sql 单表distinct/多表group by查询去除重复记录
单表distinct
多表group by
group by 必须放在 order by 和 limit之前,不然会报错
下面先来看看例子:
table
   id name
   1 a
   2 b
   3 c
   4 c
   5 b
库结构大概这样,这只是一个简单的例子,实际情况会复杂得多。
比如我想用一条语句查询得到name不重复的所有数据,那就必须使用distinct去掉多余的重复记录。
select distinct name from table
得到的结果是:
name
   a
   b
   c
好像达到效果了,可是,我想要得到的是id值呢?改一下查询语句吧:
select distinct name, id from table
结果会是:
id name
   1 a
   2 b
   3 c
   4 c
   5 b
distinct怎么没起作用?作用是起了的,不过他同时作用了两个字段,也就是必须得id与name都相同的才会被排除
使用count函数:
select *, count(distinct name) from table group by name
结果:
id name count(distinct name)
   1 a 1
   2 b 1
   3 c 1
最后:感谢这个家伙的分享:http://www.cnblogs.com/Eleanore/archive/2011/12/28/2304981.html
sql 单表distinct/多表group by查询去除重复记录的更多相关文章
- mysql having,group by查询去除重复记录
		
http://m.jb51.net/article/39302.htm 可以这样去理解group by和聚合函数 http://www.cnblogs.com/wuguanglei/p/4229938 ...
 - sql 单表/多表查询去除重复记录
		
单表distinct 多表group by group by 必须放在 order by 和 limit之前,不然会报错 *************************************** ...
 - SQL Server数据库--》top关键字,order by排序,distinct去除重复记录,sql聚合函数,模糊查询,通配符,空值处理。。。。
		
top关键字:写在select后面 字段的前面 比如你要显示查询的前5条记录,如下所示: select top 5 * from Student 一般情况下,top是和order by连用的 orde ...
 - SQL去除重复记录
		
SQL去除重复记录 if not object_id('Tempdb..#T') is null drop table #T Go Create table #T([ID] int,[Name ...
 - sql语句去除重复记录(多表连接的查询)
		
--处理表重复记录(查询和删除) /********************************************************************************** ...
 - sql 去除重复记录
		
1.查找表中多余的重复记录,重复记录是根据单个字段(peopleId)来判断select * from peoplewhere peopleId in (select peopleId from ...
 - sql联合查询去除重复计算总和
		
1.首先来个联合查询 SELECT 字段1, 字段2, 字段3, 字段4 FROM 表1 INNER JOIN 表2 ON 表1.字段x = 表2.字段x x:代表随意的一个,只要在联合查询的两张表都 ...
 - SQL 之 查询操作重复记录
		
有时,我们的数据表中会存在一些冗余数据,这就要求我们查询并操作这些冗余数据. 一.查询表中重复记录 例如,查找重复记录是根据单个字段(peopleId)来判断 SELECT * FROM Tpeopl ...
 - sql去除重复记录  且保留id最小的 没用
		
第一步:查询重复记录 SELECT * FROM TableName WHERE RepeatFiled IN ( SELECT RepeatFiled FROM TableName ...
 
随机推荐
- 《深入理解Java虚拟机》-Java代码是如何运行的
			
问题一:Java与C++区别 1.Java需要运行时环境,包括Java虚拟机以及Java核心类库等. 2.C++无需额外的运行时,通常编译后的代码可以让机器直接读取,即机器码 问题一:Java为什么要 ...
 - ZooKeeper系列(五)—— ACL 权限控制
			
一.前言 为了避免存储在 Zookeeper 上的数据被其他程序或者人为误修改,Zookeeper 提供了 ACL(Access Control Lists) 进行权限控制.只有拥有对应权限的用户才可 ...
 - vue中的v-if和v-show的区别
			
v-if和v-show的区别是前端面试中常问的基础知识点,v-if.v-show顾名思义就是用来判断视图层展示效果的.那么具体是怎么展示呢?v-if和v-show的区别又是什么呢? 首先我们可以来看一 ...
 - 解放双手——相机与IMU外参的在线标定
			
本文作者 沈玥伶,公众号:计算机视觉life,编辑部成员 一.相机与IMU的融合 在SLAM的众多传感器解决方案中,相机与IMU的融合被认为具有很大的潜力实现低成本且高精度的定位与建图.这是因为这两个 ...
 - Spring学习之旅(三)--装配Bean
			
装配 Bean 的方式 在 XML 中进行显式配置 在 Java 中进行显式配置 隐式的 Bean 发现机制和自动装配 Spring 提供了以上三种方式进行 Bean 的配置,可以根据自己的需求选择一 ...
 - 手写迷你SpringMVC框架
			
前言 学习如何使用Spring,SpringMVC是很快的,但是在往后使用的过程中难免会想探究一下框架背后的原理是什么,本文将通过讲解如何手写一个简单版的springMVC框架,直接从代码上看框架中请 ...
 - jvm系列(七):如何优化Java GC「译」
			
本文由CrowHawk翻译,地址:如何优化Java GC「译」,是Java GC调优的经典佳作. Sangmin Lee发表在Cubrid上的”Become a Java GC Expert”系列文章 ...
 - unity之初级
 - [Python] Django框架入门
			
说明:Django框架入门 当前项目环境:python3.5.django-1.11 项目名:test1 应用名:booktest 命令可简写为:python manager.py xxx => ...
 - Vue 关于多个父子组件嵌套传值
			
prop 是单向绑定的:当父组件的属性变化时,将传导给子组件,但是不会反过来.这是为了防止子组件无意修改了父组件的状态——这会让应用的数据流难以理解. props: { selectMember: { ...