Oracle SQL-使用SUM和MAX获取ID

幻影盐

在oracle中使用SUM和MAX时遇到一些困难。

我想做的是找到分数总和最高的患者。

我想同时选择总分和患者ID。

如果我运行此查询,我会得到最高分,但没有得到预期的任何患者详细信息。

        SELECT MAX(SUM(PM.score)) AS Total
        FROM Patient P, PatientMetabolic PM
        WHERE P.patientID = PM.patientID
        GROUP BY P.patientID

如果我这样添加患者ID

        SELECT MAX(SUM(PM.score)) AS Total, P.patientId
        FROM Patient P, PatientMetabolic PM
        WHERE P.patientID = PM.patientID
        GROUP BY P.patientID

我收到的不是单组分组功能错误。

任何帮助将不胜感激,谢谢您的时间。

戈兰

这样做:

WITH sums AS    
(
    SELECT P.patientID, SUM(PM.score) AS Total
    FROM Patient P, PatientMetabolic PM
    WHERE P.patientID = PM.patientID
    GROUP BY P.patientID
)
SELECT * FROM sums WHERE total=(SELECT MAX(total) FROM sums);

这将为您提供所有患者ID以及MAX得分总和。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Oracle SQL中使用SUM和CASE

来自分类Dev

ORACLE SQL中的MAX()

来自分类Dev

SQL升序和Oracle

来自分类Dev

ORACLE SQL 触发器和 SUM()

来自分类Dev

在Oracle SQL中使用as

来自分类Dev

Oracle SQL嵌套max函数

来自分类Dev

Oracle SQL嵌套max函数

来自分类Dev

Oracle SQL数据获取顺序

来自分类Dev

Oracle SQL:获取先前的值

来自分类Dev

Oracle SQL连接和扩展

来自分类Dev

Oracle SQL 分区和等级

来自分类Dev

Oracle (SQL):如何获取 SQL 查询语法

来自分类Dev

使用MAX()和SUM()聚合的SQL查询

来自分类Dev

使用group by的oracle sql查询

来自分类Dev

使用SQL / ORACLE的外键

来自分类Dev

使用动态SQL的Oracle Spool

来自分类Dev

使用SQL Oracle的BIRT报告

来自分类Dev

SQL使用Oracle SQL订购日历期

来自分类Dev

子查询和JOIN在COUNT上应用MAX SQL Oracle

来自分类Dev

如何在Oracle SQL中执行复杂的MAX()和GROUP BY?

来自分类Dev

如何修复不建议使用的oracle.sql.ArrayDescriptor,oracle.sql.STRUCT和oracle.sql.StructDescriptor

来自分类Dev

在Oracle SQL中查找列的MAX

来自分类Dev

Oracle SQL:WHERE子句中的MAX函数

来自分类Dev

Oracle SQL select max "for each" 行

来自分类Dev

多个列中的sql oracle sum valaues

来自分类Dev

Oracle SQL Count 或 Sum 以防查询?

来自分类Dev

oracle sql中如何使用SUM()函数返回的值

来自分类Dev

如何在oracle sql中获取小时和分钟?

来自分类Dev

在特定时间和日期获取systime-Oracle SQL