MySQL INNER JOIN 仅从第二个表中选择一行

2023-12-07

我有一个users表和一个payments表中,对于每个有付款的用户,在表中可能有多个关联的付款payments桌子。我想选择所有有付款的用户,但只选择他们最新的付款。我正在尝试这个 SQL,但我以前从未尝试过嵌套 SQL 语句,所以我想知道我做错了什么。感谢您的帮助

SELECT u.* 
FROM users AS u
    INNER JOIN (
        SELECT p.*
        FROM payments AS p
        ORDER BY date DESC
        LIMIT 1
    )
    ON p.user_id = u.id
WHERE u.package = 1

您需要有一个子查询来获取他们的最新日期user ID.

SELECT  u.*, p.*
FROM users u 
    INNER JOIN payments p
        ON u.id = p.user_ID
    INNER JOIN
    (
        SELECT user_ID, MAX(date) maxDate
        FROM payments
        GROUP BY user_ID
    ) b ON p.user_ID = b.user_ID AND
            p.date = b.maxDate
WHERE u.package = 1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL INNER JOIN 仅从第二个表中选择一行 的相关文章

  • MySQL获取最后10条记录中的第一条记录

    在Mysql中 我试图获取最后10条记录中最旧的记录 为了得到最后 10 个我会简单地做SELECT FROM table ORDER BY id DESC LIMIT 10 为了获得最旧的 我只需使用 ASC 顺序 我需要首先按 DESC
  • UNIX时间记录时区吗?

    我想问一下UNIX时间 UNIX时间是否记录时区 我将托管从美国芝加哥移至 JST 问题是我的整个 MySQL 数据库都有 UNIX 时间 芝加哥 美国时区 的记录 我有一个 PHP 代码来显示之前的时间 例如 3 天前 昨天等 当我搬到新
  • mySQL 返回可能有重复项的随机行

    我正在尝试随机化一定数量的行 但假设数据库中只有 4 行 而我需要获得 6 个随机行 我希望有可能 即使表中有超过 6 行 产生重复的行行 这在 mySQL 中很容易实现吗 我当前的查询是这样的 SELECT FROM winners OR
  • Oracle 获取列值发生变化的行

    假设我有一张桌子 比如 ID CCTR DATE 1 2C 8 1 2018 2 2C 7 2 2018 3 2C 5 4 2017 4 2B 3 2 2017 5 2B 1 1 2017 6 UC 11 23 2016 还有其他字段 但我
  • 使用 PHP 代码和 HTML 表单将 Excel (.csv) 导入 MySQL

    我知道还有其他类似的帖子 但每个人都建议直接在 PHPMyAdmin 中将其导入 MySQL 这工作完美 但我需要通过 HTML 表单导入 PHP 到 MySQL 我想要一个收集文件的 HTML 表单 然后将该文件传递给 PHP 脚本 我想
  • 使用 EXPLAIN 进行 MYSQL 存储过程调用

    如何分析和使用 EXPLAIN 来调用我的存储过程 我需要优化查询时间 但是似乎没有地方可以执行 EXPLAIN 调用 proc name 你可以试试 set profiling 1 call proc name show profiles
  • 如何在 Laravel 中编写联合查询?

    我正在使用 laravel 5 0 并且我有 mysql 查询 SELECT surat masuk id surat surat masuk nomor surat FROM surat masuk WHERE EXISTS SELECT
  • 使用 mysql2 gem 获取最后插入的 id

    我有这样的代码 require mysql2 db query insert into clients Name values client 我可以通过 1 个查询返回最后插入的 ID 吗 您可以使用last id客户端实例的方法 clie
  • MySQL 5左连接未知列

    我有以下查询在 mysql 4 1 中工作 但在 5 0 中不起作用 SELECT FROM email e event email ee LEFT JOIN member m on m email e email WHERE ee ema
  • 在同一个表上组合两个 SQL SELECT 语句

    我想结合这两个 SQL 查询 SELECT FROM Contracts WHERE productType RINsell AND clearTime IS NULL AND holdTime IS NOT NULL ORDER BY g
  • MySQL 子查询返回多行

    我正在执行这个查询 SELECT voterfile county Name voterfile precienct PREC ID voterfile precienct Name COUNT SELECT voterfile voter
  • 具有 LINQ 支持的最完整的 ORM?

    我正在寻找一个提供完整或接近完整的 LINQ 支持的 ORM LINQ 到 SQL 支持 LINQ 内部的所有内容 Contains Math Log 等 在不创建新数据上下文的情况下无法预先加载关系属性 ADO NET 实体框架 糟糕的
  • 执行许多插入重复键更新错误:未使用所有参数

    所以我一直在尝试使用 python 2 7 15 使用 mysql connector 执行此查询 但由于某种原因 它似乎不起作用并且总是返回错误 并非所有参数都被使用 表更新有一个主键 即 ID 这是我尝试运行此 SQL 的查询 sql
  • MySQL 触发器和 SUM()

    我有两张桌子 学生桌和家庭桌 在学生中 我有列 st venue 和total venue 家里我有收入 Total Revenue 是学生 st 收入与家庭收入之和 其中 family id student student id stud
  • 从数据库生成 XML 时出现 PHP 编码错误 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我正在尝试获取一个简单的 PHP 服
  • Spark SQL/Hive 查询通过 Join 永远持续下去

    所以我正在做一些应该很简单的事情 但显然它不在 Spark SQL 中 如果我在 MySQL 中运行以下查询 查询将在不到一秒的时间内完成 SELECT ua address id FROM user u inner join user a
  • 在 MySQL 中分割逗号分隔值

    我正在尝试将字符串中以逗号分隔的 值拆分为多列 样本数据 COL1 COL2 COL3 000002 000003 000042 09 31 51 007 004 007 预期输出 Pno Cno Sno 000002 09 007 000
  • 更改Docker容器中的mysql密码

    我如何更改 docker 容器中的 root 密码 因为一旦我停止 mysql 服务 容器就会自动停止 我应该停止 mysql 容器并部署一个新容器吗 您可以使用正在运行的容器更改它docker exec session https doc
  • php 崩溃后 mysql 表被锁定

    我有一个 MySQL DB 和一个 innoDB 表 我有一个 php 页面 用于连接 锁定表 进行一些更新 然后解锁表 PHP 页面通过 wamp 与 apache 一起提供 php页面将文件上传到数据库 我决定通过上传一个大小大于分配给
  • 在 Oracle 中使用触发器记录对表的更改

    我的一门课有一个项目 当我们的两个表发生更改时 我们需要创建一个日志 插入 更新 删除 我们需要使用Oracle触发器和PL SQL 在日志文件中 我们需要记录用户ID 日期时间 IP地址和事件 插入 更新 删除 我知道如何设置触发器 但我

随机推荐

  • javascript中“object || {}”是什么意思?

    我在 javascript 应用程序中发现了以下代码行 var auth parent auth parent auth 我知道存在现有的对象父对象 它是用 auth 对象扩展的 但我不明白是什么parent auth 在这里做 paren
  • 有人可以解释一下这段简短的 C++ 代码吗,我无法理解它

    include
  • 第 2 部分:如何在不实际旋转的情况下获取基于分区的查询的总和

    因此 由于我没有最新版本的 Postgresql 我有 Postgresql 9 3 所以我不可能想出一个类似于计算特定字段的总值的数据透视函数的函数 您可以单击下面的链接来使用我创建的问题作为参考 它们在代码中类似 但在要求方面有所不同
  • 当鼠标离开屏幕时如何停止移动

    我希望有人可以帮助我解决一个小问题 目前 我在主摄像头上附加了一个输入管理器 允许用户通过将鼠标移动到窗口边缘来平移地图 但我遇到了一个小问题 我尝试自行修复但无济于事 如果鼠标移出窗口 平移仍然会发生 当我调试或使用其他应用程序时 我觉得
  • 如何使轴在网格线之间打勾

    在下面的简单示例中 如何使 x 轴刻度值出现在网格之间 import numpy as np import matplotlib pyplot as plt np random seed 1 x range 10 y np random r
  • 发布请求后收到 400 错误请求

    当我发送以下 http post 请求时 POST query fcgi HTTP 1 1 Content Type application x www form urlencoded Content Length 63 form stat
  • 使用 Google Sheet 导入 XML 并每分钟自动刷新

    我有下面的脚本 它在名为 价格 的 google 表中导入一些 XML 数据 一切工作正常 除了我设置了一个时间驱动的触发器每分钟运行一次 但数据不会更新 触发器似乎工作正常 因为我可以看到最后一次运行时间每分钟更新一次 调用 XML 数据
  • 为什么 gcc/clang 处理代码的方式略有不同? (给出的例子)

    所以我在摆弄 C 代码时 我注意到 gcc 和 clang 处理代码的方式 如果我使用可变大小在文件范围中声明一个数组 clang 编译没有问题 但 gcc 会抛出错误 我的猜测是 这与 gcc clang 默认情况下启用 未启用哪些编译器
  • 使用 jQuery 更新 css

    我正在尝试使用 jQuery 更新导航栏的 CSS 通常将 css 定义为 navbar static top navbar nav gt active gt a background color black 我该如何使用类选择器 无需单独
  • 授予远程用户(非管理员)使用 WMI 和 C# 枚举命名空间 cimv2 中 Win32_Service 中的服务的能力

    我正在创建一个看门狗服务 它将监视各种远程服务器 都在同一域中 上的其他服务 我用来连接远程服务器的用户不是管理员 当我尝试枚举 Win32 Service 类中的服务时 出现访问被拒绝错误 我已向用户授予 WMI 控件中 Root CIM
  • 推送到分支时未触发 Github 操作

    My build and test yml文件输入 github workflows如下 name CI on push branches main name of my branch pull request branches main
  • Java接口扩展问题

    我必须实现一个 RMI 服务器 它将作为另外两个 RMI 服务的前端 因此 我决定要做的一个合乎逻辑的事情是让该接口实现其他两个服务的接口 public interface FrontEndServer extends Remote Boo
  • Inno Setup 中不同语言的不同许可证文件

    我在 Inno Setup 中创建了多语言安装文件 如何针对不同语言使用不同的许可证文件 例如 英语语言 gt 英语许可证俄语 gt 俄语许可证 如果您只想要每种语言的自定义许可证 您可以使用指定LicenceFile上的参数 Langua
  • 为什么 SkiaSharp Touch SKTouchAction.Moved 事件不起作用?

    Summary ActionType 为 的情况下永远不会引发 Touch 事件SKTouchAction Moved but SKTouchAction Pressed被提出 为什么 Moved事件永远不会被引发 Detail 我正在尝试
  • 在java中找不到要求创建类的符号

    我有一个类定义如下 public class Myclass public int myvariable 100 if myvariable gt 0 为什么我前面出现错误if condition说明cannot find symbol s
  • 反应寄存器错误不显示

    我正在链接 Web 应用程序的正面和背面 并且在注册部分中 我无法向 UI 显示验证和服务器错误消息 当执行错误注册时 我收到 400 和 401 状态我想显示的消息位于 Axioserror gt response gt data gt
  • 尝试构建正则表达式来检查模式

    a 以数字开头和结尾b 连字符应以数字开头和结尾c 逗号应以数字开头和结尾d 数字范围应为 1 31 编辑 在正则表达式中需要这条规则 谢谢 Ed Heal e 如果数字以连字符 开头 则不能以逗号以外的任何其他字符结尾 并且遵循上面列出的
  • 是否可以在堆栈上创建类的实例?

    我知道在 C 中你可以在堆栈上创建类的实例 例如 MyClass mc MyClass 8 2 或者像在堆上 MyClass mc new MyClass 8 2 你能在 C 中做同样的事情吗 我在 C 中创建类的唯一方法是newing i
  • 使用 R 从 API 中提取数据

    我可以访问 azure 中的一些遥测数据 特别是使用移动应用程序的客户的所有 API 调用 我已经使用 R 中的 httr 包来请求 3 分钟内的数据 并像这样评估响应 显然有我自己的应用程序 ID 和密钥 下面我没有包含 install
  • MySQL INNER JOIN 仅从第二个表中选择一行

    我有一个users表和一个payments表中 对于每个有付款的用户 在表中可能有多个关联的付款payments桌子 我想选择所有有付款的用户 但只选择他们最新的付款 我正在尝试这个 SQL 但我以前从未尝试过嵌套 SQL 语句 所以我想知