用于查找表中代表性行的 SQL 查询

2023-12-02

假设我有一个像这样的付款表:

CREATE TABLE Payments (
  PaymentID INT,
  CustomerID INT,
  Value INT,
  PaidOn DATE
);

INSERT INTO Payments
  VALUES
(1, 1, 5, '2000-01-01'),
(2, 1, 10, '2000-02-01'),
(3, 2, 10, '2000-01-02'),
(4, 2, 10, '2000-01-20'),
(5, 2, 5, '2000-02-02'),

我想对整个行运行查询,以了解每个客户支付的最高付款额。是否可以使用单个 SQL 查询来避免挖掘我不感兴趣的每一行,或者更糟糕的是,为每个客户运行一个查询?

到目前为止我想出的最好的办法是:

SELECT CustomerID, MAX(Value)
  FROM Payments
  GROUP BY CustomerID;

但这并没有给我PaymentId or PaidOn它找到的行的值。


select PaymentID, CustomerID, Value, PaidOn
from payments
where (customerID, value) in
( select customerID, max(value)
  from payments 
  group by customerID
);

请注意,如果每个客户有不止一笔具有最大值的付款,则此操作可能会返回多行。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用于查找表中代表性行的 SQL 查询 的相关文章

  • MS ACCESS 计数/求和行数,不重复

    我有下表 我需要计算总行数而不包括任何重复记录 CustomerID test1 test1 test2 test3 test4 test4 如您所见 总行数为 6 但有两个 test1 和两个 test4 我希望查询返回 4 IOW 我想
  • 使用 postgres 和 node js 在单个语句中执行多个查询

    我需要在像这样的单个语句中执行插入和删除查询 INSERT INTO COMPANY ID NAME VALUES 1 Paul DELETE FROM COMPANY WHERE ID 12 这是我用于执行查询的 node js 代码 p
  • 如何在mysql中选择具有相同值集的列?

    我的桌子是 patients pid name city disease did dname has disease did pid 我想列出具有相同疾病组的患者 pid 和 did 分别是患者和疾病表中的主键 并且是 has diseas
  • SQL 错误:“没有这样的表”

    我试图解决为什么我的代码为所有查询返回 null 的原因 最后发现 sql 查询什么也没有返回 我使用简约代码创建了一个新的 AIR 文档 s WindowedApplication
  • 在单个 select 语句中多次有条件地求和同一列?

    我有一个表 显示每个月在给定位置的各种类型的部署的员工部署情况 ID Location ID Date NumEmployees DeploymentType ID 例如 一些记录可能是 1 L1 12 2010 7 1 Permanent
  • MySQL“LIKE”搜索不起作用

    我通过 LOAD DATA INFILE 在 MySQL 中导入了一个 txt 数据库 一切似乎都正常 唯一的问题是 如果我使用以下查询在数据库上搜索记录 SELECT FROM hobby WHERE name LIKE Beading
  • 如何在 DB2 AS/400 中将小数字段转换为日期字段?

    我有一个 DECIMAL 字段 其中包含 AS400 格式的日期 1100614 我努力了 cast MYDATE as DATE 但我无法将 DECIMAL 转换为 DATE 而 DATE MYDATE 返回空值 如何将此字段转换为日期字
  • 只获取倒数第二条记录 - mysql-query

    我有一个如下表记录 my table id rating description 1 0 0 bed 2 1 0 good 3 0 0 bed 4 1 0 good 5 0 0 bed 6 0 0 bed 7 0 0 bed 现在我通过评级
  • 加密数据库字段的好方法?

    我被要求加密数据库中的各种数据库字段 问题是这些字段在读取后需要解密 我在用着Django and SQL Server 2005 有什么好主意吗 See 在 SQL Server 2005 数据库中使用对称加密 https web arc
  • 检查两个“select”是否相等

    有没有办法检查两个 非平凡的 选择是否等效 最初我希望两个选择之间有形式上的等价 但是答案在证明 sql 查询等价性 https stackoverflow com questions 56895 proving sql query equ
  • st_intersects 与 st_overlaps

    这两个查询有什么区别 select a gid sum length b the geom from polygons as a roads as b where st intersects a the geom b the geom gr
  • SQL Server 连接其他表中不存在的位置

    Service Asset AssetService Id Name Id Name AssetId ServiceId
  • 如何从 SQL Server 2008 查询结果中删除“NULL”

    我有一个包含 59 列和超过 17K 行的表 很多行都有NULL在某些列中 我想删除NULL以便查询返回空白 而不是NULL 我可以运行一些更新功能来替换所有NULL with 使用 SQL Server 2008R2 Management
  • 如何识别拼写不同的相似单词

    我想从数据库中过滤掉重复的客户名称 一位客户可能有多个同名但拼写差异不大的系统条目 这是一个示例 名为 Brook 的客户可能有 3 个系统条目 有了这个变化 布鲁克 贝尔塔 布鲁克 贝尔塔 比鲁克 贝尔塔 假设我们将此名称放入一个数据库列
  • 如何在 DB2 中创建返回序列值的函数?

    如何在 DB2 中创建一个从序列中获取值并返回该值的函数 应该可以在 select 或 insert 语句中使用该函数 例如 select my func from xxx insert into xxx values my func 基本
  • 解析带下划线的 SQL Server 数字文字

    我想知道它为什么有效以及为什么它不返回错误 SELECT 2015 11 Result 11 2015 第二种情况 SELECT 2 1 a a 2 1 检查元数据 SELECT name system type name FROM sys
  • 我不断收到错误“关系 [TABLE] 不存在”

    我一直在尝试查询数据库中的两个表 在服务器资源管理器中 我可以看到两个表 甚至可以看到其中的列 我们将它们称为 Schema table1 和 Schema table2 其中 Schema 的第一个字母大写 我尝试运行以下查询 selec
  • 如何在 SQL Server 中连接

    我的数据库没有特定的列 因此我通过开关在查询中创建了一个列 我需要的是将此列与数据库中的另一列连接起来 select certificateDuration DurationType case when certificateDuratio
  • 如何通过SQL查询检查是否有JSON函数?

    有SQL 2016 中的 JSON 函数 https learn microsoft com en us sql t sql functions json functions transact sql例如 JSON VALUE JSON Q
  • 是否可以引用同一个表中的不同列?

    如果博客有一个 类别 表 如下所示 CREATE TABLE categories id INTEGER PRIMARY KEY AUTO INCREMENT parent id INTEGER NOT NULL name VARCHAR

随机推荐

  • JavaScript 中的函数组合

    在下划线 低破折号等库中实现函数组合有什么好处 类似于 var compose function var funcs arguments return function var args arguments for var i funcs
  • 获取404页面的原始url

    所以我发现了这两个问题 在 IIS7 404 重定向页面中访问原始 URL 获取导致 404 的请求页面的 URL 但它们都是不同的语言 有没有办法获取导致 404 消息之类的地址在自定义消息中使用 例如 如果我要求example com
  • 在C#中将SID转换为用户名

    在 net中 我可以创建一个NTAccount使用域和用户名 并获取其 SID 但我无法使用翻译功能将 SID 转换回 NTAccount new SecurityIdentifier stringSid Translate typeof
  • 如何向 tcp 服务器发出 http 请求?

    我想要建立一个侦听端口 443 的 TCP 服务器 以便它可以接收 HTTP 请求并回发 现在我正在使用 Apache 和 PHP 以正常方式执行此操作 但是是否可以在没有 Web 服务器的情况下执行此操作 例如 我用 C NET 构建了一
  • 使用 Linq to Entities 将 UTC 转换为本地时间

    我需要在 LINQ to Entities 查询中将字段从 UTC 转换为本地时间 但它无法识别我打算使用的方法 System DateTime ToLocalTime 我的查询是这样的 选择本地当天不存在任何其他请求尚未解决的请求 考虑到
  • 在 Delphi 中使用 XPath 查找元素

    我试图在 Delphi 中的 XML 文档中查找元素 我有这段代码 但它总是在日志中显示 0 个元素 function TForm1 KannaSidu Boolean var Doc IXMLDOMDocument List IXMLDo
  • 使用 OpenSL 为所有 Android 设备提供 8KHz 采样率的语音通信

    我需要创建一个 VOIP 应用程序 并且我正在使用 OpenSL ES 我需要为所有 Android 设备以 8KHz 采样率捕获和播放 pcm 音频数据 但是 当我以 8KHz 采样率捕获音频并同时播放 语音通信 时 它会产生噪音 并且对
  • 为什么 shell case 语句中的第一个模式不能是多重模式?

    The 标准描述 of the case声明说 The format for the case construct is as follows case word in pattern1 compound list pattern patt
  • 圆形/角度滑块

    A 最近的问题让我想起了不久前我尝试编写的一些代码 目的是制作一个CircularSlider 可用于动态对象中类似角度变量的对象 我的解决方案的框架 如下 来自ValueThumbSlider 定义在高级操作功能教程 主要区别在于Valu
  • ASP.NET MVC 中的 ViewBag 如何工作

    ASP NET MVC 是如何实现的ViewBag工作 MSDN 说这只是一个Object 这让我很感兴趣 魔法 属性如何ViewBag Foo和魔法弦ViewBag Hello 实际上工作吗 另外 我如何制作一个并在我的 ASP NET
  • 错误:字符串常量之前需要声明说明符或“...”

    我在模拟另一个文件中的用法的特定行上收到错误 PyObject pyCharGetHeight PyChar self void closure CHAR DATA ch PyChar AsChar PyObject self PyObje
  • 指向其声明范围之外的局部变量的指针

    假设我有一个代表 PDF 文档的结构pdf以及代表其中一页的结构pdf page typedef struct pdf page int page no pdf page next page char content pdf page ty
  • 炸弹实验室阶段_4

    Dump of assembler code for function func4 lt 0 gt mov rbx 0x18 rsp lt 5 gt mov rbp 0x10 rsp lt 10 gt mov r12 0x8 rsp lt
  • JavaScript 中的 Django FOR 循环

    首先 我是编程新手 我正在尝试制作一个嵌入了 Google 地图的网页 在该地图中您可以看到一条设置路径的彩色线 为此 我使用 Django 在我的views py 中 我有一个名为points 的变量 其中我将一些坐标作为字符串写入列表中
  • AsycTask 抛出 IllegalStateException - 片段未附加到 Activity

    我的 Android 应用程序中有以下 AsyncTask 此 AsyncTask 包含在扩展 PreferenceFragment 的类的 OnCreate 方法中 public class NotificationsPreference
  • 从 PHP 中的图像 url 中删除解析字符串

    我有以下图像网址 http www example org wp content blogs dir 29 files 2013 02 Personalized Results Asterisk 600x417 png 这里的 url 包含
  • 通过 Opencv 混合两个图像

    我想使用Opencv对齐两个不同尺寸的图像 事实上 函数 cvAddWeighted 使我们能够组合或混合两个图像 尺寸相同 但不是我的情况 所以如果有人知道如何实现这个功能 我需要帮助 考虑图像的不同尺寸 谢谢 y m First che
  • 将 NULL 从 PHP 传递到 MySQL 以进行自动增量

    所以我在 MySQL 中设置了一个包含三列的数据库 第一列是 idnum 它自动递增用户 ID 号 第二个和第三个分别是名字和姓氏 我的问题是 当我通过 PHP 文件中的查询字符串将名称发送到数据库时 我收到了几个不同的错误 当我发送查询时
  • 使用 TypeScript 接口中的字符串枚举值作为计算属性键

    我想定义一个函数根据我给出的键返回不同类型的对象 这基本上就像这里使用的技巧createElement功能 https github com Microsoft TypeScript blob master lib lib dom d ts
  • 用于查找表中代表性行的 SQL 查询

    假设我有一个像这样的付款表 CREATE TABLE Payments PaymentID INT CustomerID INT Value INT PaidOn DATE INSERT INTO Payments VALUES 1 1 5