sql - SQL Server 查询 - 使用 max 函数检索多行
问题描述
我正在开发 ac# 桌面应用程序,我正在遍历所有客户的循环。我希望我可以做一个查询来收集所有客户的行,而不是为每个单独的客户执行选择语句。
SELECT CustID, Runtot
FROM AUDIT
WHERE UID = (SELECT MAX(uid) FROM Audit WHERE CustID = 6)
审计表:UID、CustID、CustIndex、Amount、RunTot
UID 是一个标识列,custindex 对客户插入的每一行进行迭代,runtot 字段将根据数量上下波动。基本上我需要的是通过查看每个客户的最大 uid 或 custindex 来获取最新的 runtot 字段。
解决方案
你想要一个相关的子查询:
SELECT a.CustID, a.Runtot
FROM AUDIT a
WHERE a.UID = (SELECT MAX(a2.uid) FROM Audit a2 WHERE a2.CustID = a.CustID);
推荐阅读
- jmeter - 我的服务器是否太弱而无法运行具有 150 个并发用户的简单 JMeter 测试计划?
- json - Spring REST - 发布组合 JSON(多个对象)
- internet-explorer - IE:通过服务器关闭友好的 HTTP 错误消息?
- android - android内核读取文件
- java - 使用大写表名插入时,带有 Cassandra 的 Spring Boot Data 会引发错误
- c++ - 在参数化的 Google Test 中加载测试序列文件
- vue.js - 点击切换班级
- github - 合并前要求所有 GitHub 企业代码所有者批准
- python - 使用 OpenCv 与 VLC 媒体播放器在 H264 编码的视频中丢失帧
- security - hping3 Syn Flood 攻击 (DoS) 不够强大