首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从patient_id中找到最常用的数字

如何从patient_id中找到最常用的数字
EN

Stack Overflow用户
提问于 2021-06-03 17:20:24
回答 4查看 43关注 0票数 1

要从中检索数据的表的图像:

REM准考表

插入进入值(205,101,'2/2/2011','HB',114,'P','21/2/2011');

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2021-06-03 17:29:15

什么是“最频繁的数字”?入院人数最多的病人是谁?如果是这样,那么

代码语言:javascript
复制
select patient_id
from (select patient_id,
             rank() over (order by count(*) desc) rnk
      from admission
      group by patient_id
     )
where rnk = 1;
票数 0
EN

Stack Overflow用户

发布于 2021-06-03 17:27:57

计数group by patient_id并仅使用FETCH FIRST 1行:

代码语言:javascript
复制
select count(*) cnt, patient_id 
  from admission group by patient_id 
order by cnt desc FETCH FIRST 1 ROWS ONLY;

如果您有Oracle < 12C R1,请使用rownum with subquery:

代码语言:javascript
复制
select *
from  
(select count(*) cnt, patient_id 
      from admission group by patient_id 
    order by cnt desc ) 
where ROWNUM = 1;
票数 0
EN

Stack Overflow用户

发布于 2021-06-03 17:29:28

在这两种情况下,如果只需要patient_id,则可以从select中删除count(*)作为patient_max

Oracle

代码语言:javascript
复制
SELECT * FROM (
 SELECT patient_id,count(*) AS patient_max
           FROM admission 
           GROUP BY patient_id 
           ORDER BY count(*) DESC
 ) 
 WHERE ROWNUM <= 1;

Postgresq

代码语言:javascript
复制
 SELECT patient_id,count(*) AS patient_max
           FROM admission 
           GROUP BY patient_id 
           ORDER BY count(*) DESC 
           LIMIT 1;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67818775

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档