You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何对关联子查询的结果使用MAX()函数获取最大值?

获取查询结果集中的最大值

你可以通过两种方式实现获取结果集的最大值:

方法一:嵌套子查询聚合

将原查询作为子查询,在外层使用MAX()函数直接计算最大值:

SELECT MAX(length_val) AS max_length
FROM (
    SELECT 
       (SELECT LENGTH("PackForm") 
        FROM "schema"."T 2" 
        WHERE "ID-PrsPack_fkey" = "ID-PrsPack") AS length_val
    FROM
        "schema"."T 1" 
    WHERE 
        "ID_fkey" = 116
) AS subquery;

方法二:改写为JOIN关联查询(推荐)

通过JOIN关联两张表后直接聚合,这种方式通常性能更优:

SELECT MAX(LENGTH(t2."PackForm")) AS max_length
FROM "schema"."T 1" t1
JOIN "schema"."T 2" t2 
  ON t2."ID-PrsPack_fkey" = t1."ID-PrsPack"
WHERE t1."ID_fkey" = 116;

两种方法都能直接返回你需要的最大值19。

内容的提问来源于stack exchange,提问作者StOMicha

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 07:04:49