一个过滤重复数据的 SQL 语句

数据如下:

303 标准类别 TR_STANDARD_MANAGER

    107 巡视记录类别 TR_PATROL_LOG

    61 巡视记录类别 TR_PATROL_LOG

    221 检修类型 TR_REPAIR_LOG

    121 检修管理计划类别 TR_REPAIR_PLAN

    141 检修管理计划类别 TR_REPAIR_PLAN

    24 器材管理类别 TR_PATROL_PLAN_1

    105 巡视计划类别 TR_PATROL_PLAN

    108 检修管理计划类别 TR_REPAIR_PLAN

    109 检修类型 TR_REPAIR_LOG

    1 巡视计划类别 TR_PATROL_PLAN

    2 巡视记录类别 TR_PATROL_LOG

    26 器材管理类别 TR_PATROL_PLAN_1

    142 检修类型 TR_REPAIR_LOG

    145 事故类型 TR_ACCIDENT

    144 事故类型 TR_ACCIDENT

    261 巡视计划类别 TR_PATROL_PLAN

    147 负荷类型 TR_BURTHEN

    262 巡视计划类别 TR_PATROL_PLAN

    265 巡视计划类别 TR_PATROL_PLAN

    267 检修管理计划类别 TR_REPAIR_PLAN

    268 检修管理计划类别 TR_REPAIR_PLAN

    269 事故类型 TR_ACCIDENT

    146 事故类型 TR_ACCIDENT

    283 标准类别 TR_STANDARD_MANAGER

    263 巡视计划类别 TR_PATROL_PLAN

    5 资料类别 TR_EQUP_ATT_INFO

    266 检修管理计划类别 TR_REPAIR_PLAN

    281 资料类别 TR_EQUP_ATT_INFO

//////////////////////////////////////////

需要取得不重复的类别名称和对应的主键id。

select  scop_name ,RUN_TYPE_ID from tr_type a where

     RUN_TYPE_ID=(SELECT MAX(RUN_TYPE_ID) FROM tr_type b where a.scop_name =b.scop_name)

时间: 2024-10-23 10:20:26

一个过滤重复数据的 SQL 语句的相关文章

一个过滤重复数据的 SQL 语句_MsSql

数据如下:     303 标准类别 TR_STANDARD_MANAGER     107 巡视记录类别 TR_PATROL_LOG     61 巡视记录类别 TR_PATROL_LOG     221 检修类型 TR_REPAIR_LOG     121 检修管理计划类别 TR_REPAIR_PLAN     141 检修管理计划类别 TR_REPAIR_PLAN     24 器材管理类别 TR_PATROL_PLAN_1     105 巡视计划类别 TR_PATROL_PLAN   

mysql删除重复数据记录sql语句总结

我最常用的方法是  代码如下 复制代码 //删除id重复的数据,适合id是手工主键 delete person as a from person as a, (     select *,min(id) from person group by id having count(1) > 1 ) as b where a.id = b.id //查找重复的,并且除掉最小的那个  代码如下 复制代码 delete tb_person as a from tb_person as a, ( selec

复制数据库表中两个字段数据的SQL语句

复制数据库表中两个字段数据的SQL语句 今天为表新添加一个字段,但又想与表中的另一个字段值相同,由于数据过多想通过sql语句实现,经测试下面的这句话确实很好用.   复制代码 代码如下: update jb51_temp set B=A jb51_temp 代表表明 A是有数值的字段,B是新添加的字段 ,记住空值表放到前面,如果set a=b,那么你的数值都为空了,就麻烦了,建议操作前备份数据库. 如何将一个字段里的值复制添加到另一个字段中 比如,有二个字段A和B,A字段是值是"我",

sqlserver 1 n-sqlserver 两个表关联1:n求随机取一条数据的sql语句实现!

问题描述 sqlserver 两个表关联1:n求随机取一条数据的sql语句实现! 现在要补齐tb1中演唱歌曲字段.条件是去tb2中查找相同艺人演唱过的歌曲,随机填充到tb1中的歌曲名字段 一个歌手不止演唱一首歌,所以tb2中是艺人演唱所有歌曲的集合.tb1中同一个歌手可能出现好几次 补齐时候需根据tb1中艺人名称去tb2也就是艺人歌曲汇总表中查找相同艺人演唱的歌曲名称. 需要在艺人名相同情况下随机取tb2中演唱歌曲名去一一补齐tb1中的字段 tb1 tb1 艺人 演唱歌曲名 a null b n

查询及删除重复记录的SQL语句

查询及删除重复记录的sql语句 (一) 比方说 在a表中存在一个字段"name", 而且不同记录之间的"name"值有可能会相同, 现在就是需要查询出在该表中的各记录之间,"name"值存在重复的项: select name,count(*) from a group by name having count(*) > 1 如果还查性别也相同大则如下: select name,sex,count(*) from a group by nam

mysql删除重复记录的sql语句与查询重复记录

方法1 delete yourtable where [id] not in ( select max([id]) from yourtable group by (name + value)) 方法2 delete a from 表 a left join(select (id) from 表 group by name,value)b on a.id=b.id where b.id is null 查询及删除重复记录的sql语句 1.查找表中多余的重复记录,重复记录是根据单个字段(peopl

复制数据库表中两个字段数据的SQL语句_数据库其它

复制数据库表中两个字段数据的SQL语句 今天为表新添加一个字段,但又想与表中的另一个字段值相同,由于数据过多想通过sql语句实现,经测试下面的这句话确实很好用. 复制代码 代码如下: update jb51_temp set B=A jb51_temp 代表表明 A是有数值的字段,B是新添加的字段 ,记住空值表放到前面,如果set a=b,那么你的数值都为空了,就麻烦了,建议操作前备份数据库. 如何将一个字段里的值复制添加到另一个字段中 比如,有二个字段A和B,A字段是值是"我",B字

删除重复记录的sql语句

  删除重复记录的sql语句 我们提供了两款删除重复记录的sql语句,一种是用id not in来实例,也算是联合查询的方法吧,第二种是临时表来删除重复记录. 1),delete from tablename where id not in (select max(id) from tablename group by col1,col2,...) 2),select distinct * into temp from tablename delete from tablename insert

读取数据表中第m条到第n条的数据,SQL语句怎么写?

原文:读取数据表中第m条到第n条的数据,SQL语句怎么写? 对于MySQL或者Oracle来说,如果实现从Table 表中取出第 m 条到第 n 条的记录操作,我们需要TOP函数(不是所有的数据库都支持TOP函数):Select Top子句 但是,你能想到几种方法? (1)使用not in Select TOP n-m+1 *  FROM Table  Where (id NOT IN (Select TOP m-1 id FROM Table ))     (2)使用exists  Selec