zoukankan      html  css  js  c++  java
  • 过滤掉多余的重复记录的SQL语句

    表中取出的fw_id有可能有重复的,结果可能如下

    fw_id,      file_title       

    14             关于组织征集安全生产“千项”新型实用产品的通知                                                          
    6               关于加强上海市安全生产专家管理的补充通知
    18             关于什么什么的通知
    18             关于什么什么的通知                  
    18             关于什么什么的通知
    7               关于对《上海市国民经济和社会发展地十二个五年规划纲要草案(征求意见稿)》修改建议
    1               关于提请对上海市安全生产技术支撑体系专业中心市级实验室项目进行审计的函

     现在需要将fw_id=18的记录只保留一条,重复记录只保留第一条就可以了,摸索了半天,最终方法如下:

     

    with x as (

    select a.*,
    (select flow_name from flow where flow_id=a.flow_id) as flow_name
    from AM_Fawen a,am_subproject3 b,am_projectlist c,taskcenter d,userlist u
    where a.sp3_id=b.sp3_id
                            and b.sp3_id=c.pl_subprojectid
                            and b.sp3_tablename=c.pl_subprojecttable
                            and c.project_id=d.project_id
                            and ','+cast(u.id as varchar)+',' like d.handlers_assigned
                            and d.status=0 and b.sp3_projectname like '%%'
                          and fun_name like '%%'
    )
    ,
    y as (
    select *,count(fw_id) over (partition by fw_id) r,row_number() over (partition by fw_id order by fw_id) rno from x
    )   
    select * from y where rno=1

  • 相关阅读:
    6.金额中带有逗号不能直接parseFloat
    5-不要在ajax中return false不会生效的
    4.xx is not defined at HTMLAnchorElement.onclick 的问题
    3.git更新地址也更改
    2.文件上传后没有权限不够
    第三章
    oracle-sql
    华为杯 数模
    Learning Dynamic Context Graphs for Predicting Social Events
    图神经网络
  • 原文地址:https://www.cnblogs.com/yuanxiaoping_21cn_com/p/2160579.html
Copyright © 2011-2022 走看看