Qlik Sense Cloud表达式等价SQL:获取最大日期对应的pace值
获取最大日期对应pace值的几种SQL写法
嘿,这个需求很常见,我给你分享几个实用的SQL写法,都能帮你轻松拿到最大日期对应的pace值:
子查询匹配法
先通过子查询找出最大的日期,再用WHERE条件匹配这个日期,就能关联到对应的pace:SELECT pace FROM Table WHERE date = (SELECT MAX(date) FROM Table);👉 注意:如果有多条记录的日期都是最大值,这个写法会返回所有对应的pace值哦。
窗口函数法(灵活度更高)
用窗口函数给记录按日期倒序排号,直接取排第一的那条的pace:SELECT pace FROM ( SELECT pace, ROW_NUMBER() OVER (ORDER BY date DESC) AS rn FROM Table ) t WHERE rn = 1;👉 小技巧:如果想保留所有最大日期对应的pace(比如多个记录日期相同且都是最大值),把
ROW_NUMBER()换成RANK()就行,这样所有最大日期的记录都会被选中。LIMIT取第一条法(简单直接)
把记录按日期从新到旧排序,直接取第一条的pace:SELECT pace FROM Table ORDER BY date DESC LIMIT 1;👉 注意:这个写法只会返回一条结果,如果有多个最大日期的记录,只会返回排序后的第一条,适合确定最大日期唯一的场景。
内容的提问来源于stack exchange,提问作者Randy Eckhardt
相关产品推荐
相关产品推荐

