sql语句查询重复数据只返回一条结果

论文降重 独有的降重技术

免费使用,100%过查重,多种降重模式,1小时轻松搞定论文

论文查重 检测与学校相同

一站式聚合查重平台,含知网、万方、维普等,正品价格便宜

sql语句查询重复数据只返回一条结果

问:sql重复数据只取一条记录?

id 姓名 职业
1 张三 学生
2 李四 学生
3 张三 程序员
4 李四 教师
5 王五 小姐
要求结果:
id 姓名 职业
3 张三 程序员
4 李四 教师
5 王五 小姐
相同姓名的区ID最大的那个

  • 答:select distinct(籍贯) from 学生信息 --去除重复记录 distinct(不相同).查询去除籍贯重复的信息

  • 答:我还是觉得 这样做好像是错的。 ID 姓名 职业 1 张三 学生 。。。。 3 张三 程序员 首先 ID 这个 应该是主键 不不会 重复的 不管有多少个人 叫张三 ,你的ID都是不同的。你的职业可以相同也可以不相同,难道还能要求人家性别相同或者不相同。就2个性别,人妖我不知道算不算 ,但是加起来 也就三个。

  • 答:以姓名为范围,以ID排逆序,取最大值。 with v as (select 姓名, row_number() over (partition by 姓名 order by id desc) as rk, id, 职业 from tableA) select id,姓名,职业 from v where rk=1

  • 答:select * from 表名 where id in select id from ( select max(id) as id ,姓名, from 表名 group by 姓名 ) as as 表2

  • 答:select max(id),姓名,min(职业) from 表名 group by 姓名

问:SQL重复数据只显示一条,查询语句怎么写?

  • 答:SELECT name, MAX(ID) FROM XXX GROUP BY name;

  • 答:如果只是按你的结果得到数据,则语句是: select 名字,max(金额) 金额 from 表 group by 名字 但感觉金额应该是统计的,比如张三显示230,则应该是 select 名字,sum(金额) 金额\ from 表 group by 名字

  • 答:1、显示最大的 select 名字,max(金额) 金额 from 表 group by 名字 2、显示合计的 select 名字,sum(金额) 金额 from 表 group by 名字

  • 答:select 名字 ,max(金额) from table group by 名字

  • 答:select distinct * from 表

问:SQL检索,但检索结果中有某字段内容重复的数据只保留1条显示?

  • 答:我就默认你是想知道两行数据所有字段完全相同的情况了, select distinct * from tablename

问:SQL 语句 查询指定字段相同的只显示一条单据?

如下语句,编码改条完整的select dt_operdate ,orderno,ch_billno_old,* from cyhq_u_tmp_orderdish_qu where ch_branchno ='X002' and ch_billno like('%mt%')

  • 答:Distinct 关键字可以得到不重复记录,但你的这个表格中其他字段的记录不一定相同,因此,必须使用二条SQL语句才能实现。

问:SQL检索,但检索结果中有某字段内容重复的数据只保留1条显示?

问题描述:用“关键词”检索一个表,查询结果中重复数据(某个字段内容重复)只显示1条。想知道SQL语句要怎么写?
表A
ID Code Name
1 a234 手机
2 b342 手机膜
3 a234 手机屏
4 c325 电话机
5 b864 手机
6 a234 翻盖手机
7 c325 手机充电宝
检索“手机”这个关键词,将Code重复只取1条,并按Name字数从短到长排序,想要得到的查询结果:
Code Name
a234 手机
b864 手机
b342 手机膜
c325 手机充电宝
因为a234查询结果有3条,但只要取第1条,这个SQL查询语句应该怎么写?
(好像去重复语句不能显示其它字段)
由于每天7、8千次的检索量,而且这个表的数据量有40万条记录,所以希望有一个高速的SQL语句。
我自己写的SQL语句:SELECT Code,C_Name FROM 表A where ID in(select min(ID) from 表A where C_Name like '%手机%' group by C_Code) order by len(C_Name) asc 但是检索结果不准确,有漏掉的。想用EXISTS替换IN但不知怎么弄?

  • 答:检索结果有漏掉?请楼主举例 我用联合查询的例子,楼主也可参考一下 SELECT a.Code, a.Name FROM 表A as a right join (select min(ID) as ID from 表A where Name like '%手机%' group by Code) as b on a.ID = b.ID order by len(a.Name) asc 有问题可私信

  • 答:SELECT TOP 100 CODE,NAME FROM 表 WHERE NAME LIKE '%手机%' GROUP BY CODE,NAME

问:sql 重复记录只显示一条?

数据表如下所示
keycode case_type done_name memo
A2001040527002 审批 <null> <null>
A2001040527002 审批 <null> <null>
A2001040527002 审批 小王 <null>
A2001040681016 初审 小李 <null>
A2001040681016 复审 <null> <null>
字段memo是text类型的
要求编写一个查询语句,实现查询字段done_name为空 且keycode不能重复的。
查询结果如下所示
keycode case_type done_name memo
A2001040527002 审批 <null> <null>
A2001040681016 复审 <null> <null>
大家注意:字段memo是text类型的 ,不能以 DISTINCT 方式选择 text、ntext 或 image 数据类型。

  • 答:select distinct keycode,case_type,done_name,memo from 表名 where done_name is null

  • 答:select distinct keycode,case_type,done_name,memo from a where done_name='' order by keycode

  • 答:SELECT DISTINCT * FROM 数据表 WHERE ISNULL(done_name,'')=''

问:SQL重复数据只显示一条,查询语句怎么写?

  • 答:SELECT DISTINCT * FROM 表名

  • 答:如果是所有字段都重复,使用 distinct。 如果部分字段重复,只能使用group by 或是其他的方法。