distinct后面接什么(distinct 两个字段)

本文目录
distinct 两个字段
后面跟多个字段的话,就是要多个字段同时重复才能过滤
其实道理很简单,举个例子,如果数据是
id name
1 aaa
2 aaa
select distinct id,name from tab
这个语句的返回结果必然是两条,因为如果是1条的话,id 有两个值,就没法显示,随机取数这种事情如果没有指令,数据库自己是没有这个功能的。
解决方法:
比如name相同的记录,我要id最小的
select * from tab a where not exists (select 1 from tab where name = a.name and id 《 a.id)
搞定!
求采纳为满意回答。
解释distinct from and 中and的用意
表示 distinct from 与 sitting in 的同位意义:
(我们)仔细推敲之后发现,被称作“哲学”的这种自成一体的学科基本概念,比如人们孜孜以求的神学和科学,其所独有或表述的论说其实就是源自当今(社会)。
(翻译供参考)
distinct后排序的问题
由于你的update_time不同,所以你select出来的是不同的,除非你将update_time 去掉,我遇到过很多次这个问题,解决不了~~~假如你只是要找出用户,那就不要update_time了,如果你还想找出update_time。。额,很抱歉,实现不了,有个办法,就是将所有的update_time都连接在一起,但是很麻烦,因为你不知道该用户参加了多少个话题。。。没了。。。
求数据库中 all,distinct关键字的用法讲解,及示例!!!!
ALL是全部显示记录集,Distinct是不重复显示,我打个比方:
我做一个下拉列表来筛选某个产品型号,产品型号随市场那边改变,你总不能先写在里面吧,天天换型号你就天天改,那太麻烦了,所以就让下拉列表去找他的数据表,找到了他没理由没有一个不相同的,所以你选择的时候拉一大堆全是一样的,这时候你就需要Distinct函数,把那些重复的排除掉,不需要,太麻烦了,DISTINCT用处很多,他把重复给清除掉。用法就是写在SELECT语句后面做关键字SELECT Distinct * From 表名称。
ALL用法也是一样,他是把记录全部显示出来,比如我要统计到底有多少记录或者多少数量汇总一下,先前查询排除了重复项,再去排除不管他重不重复始终是一条记录
看上去好象他们刚好作用相反,其实DISTINCT不是在用过ALL后场合用的,他是在查询一个表筛选一个字段和几个相同字段时排除完全相同的几条查询记录。ALL是在没有进行筛选把记录集合全部显示出来。打个比方:我有个售货单记录名称、时间、价格等,名称和价格是有重复的吧,我做查询就只显示了名称和价格,你打开一看,也许重复的排除后名称和价格一样的全合成一条了,怎么统计?,那就全部显示出来,直接统计就行了。
要注意的是,DISTINCT排除的是完全相同的记录

更多文章:
form表单制作(为什么制作的form表单会在网页显示中多出一行)
2026年10月11日 09:10
teammate(teammate,company,partner)
2026年10月11日 06:10
javascript arraybuffer(javascript可以把base64编码转换成二进制代码吗求示例代码!)
2026年10月11日 04:00
text函数公式(excel中round和text函数的区别是什么)
2026年10月11日 03:50
google chrome打不开(chrome浏览器打不开怎么回事 浏览器打不开的处理方法)
2026年10月11日 02:00
websocket整合springboot(Springboot整合Websocket遇到的坑)
2026年10月11日 01:40
drawerlayout(android 怎样让drawerlayout设置的侧滑菜单的内容充满屏幕)
2026年10月10日 19:20
xor四位数怎么运算(单片机怎样用C语言实现4个数字间的异或)
2026年10月10日 17:50



