sql - 在最大列值上获取不同的行
问题描述
我需要最大列值上的一行表
SELECT MAX(PromoFileVersion) AS PromoFileVersion
, FYearWeek
, WeekPriority
, PromoEventId
FROM PromoCalendar
GROUP BY FYearWeek, WeekPriority, PromoEventId
但我收到重复的记录
有什么帮助吗?
解决方案
SELECT PromoFileVersion, FYearWeek, WeekPriority, PromoEventId
FROM PromoCalendar p
where PromoFileVersion = (select max(PromoFileVersion) PromoFileVersion
from PromoCalendar p1
where p1.FYearWeek = p.FYearWeek
and p1.WeekPriority = p.WeekPriority
GROUP BY FYearWeek, WeekPriority);
推荐阅读
- unity3d - VS Code 中的 Omnisharp 会产生很多关于 Unity 项目的警告。为什么?
- python - PermissionError:[Errno 13] 权限被拒绝:'voice.mp3'
- javascript - 浮点数 - 没有算术运算和精度错误
- node.js - 使用承诺重构代码以读取文件并将它们转换为 json
- c# - 是什么让这个查询在 EF Core 3.x 中无法翻译?
- shopify - 更改 Shopify 上博客的 URL
- c# - 如何简化相互依赖的绑定?
- java - Getter Setter 不会给出变量
- c - Mingw64 / Msys2 - gcc 无法在自己的包含目录中找到标头
- javascript - 为了能够使用 Phaser、PixiJS 和 EaselJS 等库,我是否只需要与源建立“连接”来下载库?