精华内容
下载资源
问答
  • oracle字段去重查询

    2018-06-29 15:38:00
    oracle字段去重查询 CreationTime--2018年6月29日15点11分 Author:Marydon 1.情景展示  需要对表BASE_MRI_DEVICE的COMPNAME、FIELDSTR、VERSION字段分别进行去重查询,如何使用一个sql搞定? 2.需求分析 ...
     

    oracle 多字段去重查询

    CreationTime--2018年6月29日15点11分

    Author:Marydon

    1.情景展示

      需要对表BASE_MRI_DEVICE的COMPNAME、FIELDSTR、VERSION字段分别进行去重查询,如何使用一个sql搞定?

    2.需求分析

      注意:是分别对3个字段进行去重,而不是3个字段联合去重。

      首先,必须进行三次查询,而将查询结果进行"行合并"需要用到union或union all;

      其次,为了区分查询结果属于哪个字段,所以需要3列,

      同时,为了保证每次查询只对一个字段进行去重查询,可以将另外2个字段置空。

    3.代码实现

      方式一:使用group by(数据库通用)

    --对COMPNAME、FIELDSTR、VERSION进行去重查询
    SELECT *
      FROM (SELECT COMPNAME, '' FIELDSTR, '' VERSION
              FROM BASE_MRI_DEVICE
            UNION ALL
            SELECT '' COMPNAME, FIELDSTR, '' VERSION
              FROM BASE_MRI_DEVICE
            UNION ALL
            SELECT '' COMPNAME, '' FIELDSTR, VERSION
              FROM BASE_MRI_DEVICE)
     GROUP BY COMPNAME, FIELDSTR, VERSION

      方式二:使用distinct(Oracle独有)

    --对COMPNAME、FIELDSTR、VERSION进行去重查询
    SELECT DISTINCT COMPNAME, '' FIELDSTR, '' VERSION
      FROM BASE_MRI_DEVICE
    UNION ALL
    SELECT DISTINCT '' COMPNAME, FIELDSTR, '' VERSION
      FROM BASE_MRI_DEVICE
    UNION ALL
    SELECT DISTINCT '' COMPNAME, '' FIELDSTR, VERSION
      FROM BASE_MRI_DEVICE

    4.效果展示

      方式一

      方式二

     

     

    转载于:https://www.cnblogs.com/Marydon20170307/p/9243754.html

    展开全文
  • oracle字段去重

    2012-12-07 23:46:50
    oracle字段去重 以某一个字段去重 oracle字段去重 以某一个字段去重
  • Oracle某个字段去重

    千次阅读 2020-03-22 21:37:50
    测试数据如下 例子1:要求对NAME相同的值只取一条即可 select * from test t where t.rowid in (select max(rowid) from test group by name) 例子1:要求对NAME相同的值只取一条且AGE值最大 ...

    测试数据如下
    在这里插入图片描述

    例子1:要求对NAME相同的值只取一条即可
    select *
      from test t
     where t.rowid in (select max(rowid) from test group by name)
    
    例子1:要求对NAME相同的值只取一条且AGE值最大
    select *
      from test t
     where (t.name, t.age) in (select name, max(age) from test group by name)
    
    展开全文
  • oracle数据库字段去重

    2018-08-22 14:50:41
    delete from 表名 where rowid in (select rid from (select rowid rid,row_number() over(partition by 需要去重字段 order by rowid) rn from 表名) where rn <> 1 );
    delete from 表名 where rowid in 
        (select rid from 
            (select rowid rid,row_number() over(partition by 需要去重的字段 order by rowid) rn from 表名)
        where rn <> 1 );
    
    展开全文
  • 单个字段: select distinct(a) from tableA;...多个字段,利用max()去重SELECT*FROMGM_PPU_RESIDENT_NORBASE g WHEREg.ROWID = ( SELECT max( s.ROWID ) FROM GM_PPU_RESIDENT_NORBASE s WHERE g.CARD_NO = s...

    单个字段:

    select distinct(a) from tableA;

     

    多个字段,利用max()去重 
     SELECT
      *
     FROM
      GM_PPU_RESIDENT_NORBASE g
     WHERE
      g.ROWID = ( SELECT max( s.ROWID ) FROM GM_PPU_RESIDENT_NORBASE  s  WHERE g.CARD_NO = s.CARD_NO     )
     

    转载于:https://www.cnblogs.com/superming/p/11044994.html

    展开全文
  • 根据字段去重,。 根据 id和sex 字段去除重复的行,并获取其它的列: select id,name,sex from( select a.*,row_number() over(partition by a.id,a.sex order by name) su from test a ) where su=1 其中,...
  • 问题:在oracle中使用group by分组,group by子句中必须包含所有的select中的字段和order by子句中的字段。 在不使用group by子句的情况下,进行分组。(根据部分字段分组) over()分析函数 原sql SELECT IM. ...
  • 交互式爱情WITH temp as ( select '111' as userid,'5' as status,'7' as ord from dual union all select '111' as userid,'0' as status,'9' as ord from dual union all select '111' as userid,'1'...
  • mysql/oracle字段去重方法

    千次阅读 2011-09-27 16:07:16
    1、Oracle-没尝试过 delete from table where rowid not in (selelct max(rowid) from table group by id,a); 2、mysql-创建临时表,不适合大数据量的表去重 create temp
  • if not object_id('Tempdb..#T') is null drop table #T ...如果还不能解决问题 建议楼主给出具体需求 是根据哪个字段来去重复的   转载于:https://www.cnblogs.com/langtianya/p/5997048.html
  • oracle根据某个字段去重查询实例

    万次阅读 2016-12-06 16:00:49
    sql去重复
  • oracle查询根据某个字段去重根据另一个字段决定取哪一条数据 简单举例就是在一张学员考试表(student)中有的学员考试参加了多次取最后一次的数据,如表中数据有: 需要得到的结果是: 下面直接给出该查询的SQL...
  • Oracle 多个字段去重

    千次阅读 2019-05-28 10:36:28
    SELECT DISTINCT SUBSTR(d.DEPT_ID, 0, 2) DEPT,d.SECURITY_CHECK --截取前俩位判断去重复 FROM SAF_T_INSPECTION_DEPT d SELECT A .desc_, A .ID_, B.CHECK_TYPE FROM ( SELECT * ......
  • oracle查询多列时对单列去重 最近有一个查询,...
  • -16 0 现在要对表数据去重,留下一行,修改如下: select * from ti_vw_boss where transactionid in (select min(TRANSACTIONID) from ti_vw_boss group by dn,dn_type,productid,src_spid); 结果: transactionid ...
  • oracle 多个字段 去重

    千次阅读 2012-09-25 17:37:05
    select distinct(字段一||字段二||字段三)   用“||”连接就行

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 9,512
精华内容 3,804
关键字:

oracle根据字段去重