汕头牛肉丸 2023-11-24 16:26 采纳率: 94.1%
浏览 4

oracle多条数据只保留一条

oracle多条数据只保留一条
病人的检验结果,pat_id是病人id,我想查病人的血小板检验结果,一个病人可能有对应多个,而且结果值基本不同,例如这个病人1234有4个血小板结果值,1,2,3,4;我只想要去一条,用distinct的话,只能是针对所有字段都相同才能去重,用row_number可以先排序再取,用下列语句查询很快,但是不是单独查一个病人的,是有很多病人的数据的,我把语句创建成视图,带入pat_id条件去查,结果是会先把所有的结果分组排序再根据带入条件返回。

最终目的:我想通过视图,通过带入病人id条件,查询病人的检验结果,每种只取一条

SELECT
       T1.PAT_ID,
       T2.RESULT_CODE,
       T2.RESULT_NAME,
       T2.RESULT
       Row_Number() OVER(partition by t2.RESULT_CODE ORDER BY t2.RESULT desc) as rank
  FROM test T1,test_result t2
 WHERE to_char(T1.id) = T2.id and t2.RESULT_NAME in('血小板',‘红细胞’)
and t1.pat_id='1234'
  • 写回答

2条回答 默认 最新

  • oldmao_2000 人工智能领域新星创作者 2023-11-24 16:34
    关注

    两个思路仅供参考
    1.看看能不能病人id加row_number同时做条件
    2.将病人id取得的结果在前端读取到dataset再做业务处理,例如没有查询到该病人信息,查询到多条记录就只取一条

    评论

报告相同问题?

问题事件

  • 创建了问题 11月24日

悬赏问题

  • ¥30 为什么会失败呢,该如何调整
  • ¥50 如何在不能联网影子模式下的电脑解决usb锁
  • ¥20 服务器redhat5.8网络问题
  • ¥15 如何利用c++ MFC绘制复杂网络多层图
  • ¥20 要做柴油机燃烧室优化 需要保持压缩比不变 请问怎么用AVL fire ESE软件里面的 compensation volume 来使用补偿体积来保持压缩比不变
  • ¥15 python螺旋图像
  • ¥15 算能的sail库的运用
  • ¥15 'Content-Type': 'application/x-www-form-urlencoded' 请教 这种post请求参数,该如何填写??重点是下面那个冒号啊
  • ¥15 找代写python里的jango设计在线书店
  • ¥15 请教如何关于Msg文件解析