如何为每个成员选择最新的输入?

2024-02-17

假设我有一个 MySQL 表:



╔══════╦═════╦═════════╦═════════╗
║ time ║ mid ║ field_1 ║ field_2 ║
╠══════╬═════╬═════════╬═════════╣
║  100 ║   1 ║      32 ║      54 ║
║  100 ║   2 ║       0 ║      34 ║
║  100 ║   3 ║      44 ║      99 ║
║  200 ║   1 ║       0 ║      45 ║
║  200 ║   2 ║       0 ║      45 ║
║  200 ║   3 ║       4 ║      59 ║
║  200 ║   4 ║      45 ║      45 ║
╚══════╩═════╩═════════╩═════════╝
  

time 是 UNIX 时间戳。 mid是会员id。 field_1 由成员提供。 field_2 会自动填充。

我希望为所有成员选择具有最新非零 field_1 的行。所以查询将导致:



╔══════╦═════╦═════════╦═════════╗
║ time ║ mid ║ field_1 ║ field_2 ║
╠══════╬═════╬═════════╬═════════╣
║  100 ║   1 ║      32 ║      54 ║
║  200 ║   3 ║       4 ║      59 ║
║  200 ║   4 ║      45 ║      45 ║
╚══════╩═════╩═════════╩═════════╝
  

我想出的唯一解决方案似乎不太优雅:



SELECT *
FROM (
    SELECT *
    FROM t1
    WHERE field_1 > 0
    ORDER BY time DESC
) AS a
GROUP BY mid
  

有没有更好的办法?


这里的想法是创建一个子查询来获取最大值time对于每个mid并将其加入到桌子上。

SELECT a.*
FROM tableName a
INNER JOIN
(
SELECT mid, MAX(time) maxV
FROM tableName
WHERE field_1 > 0
GROUP BY mid
) b ON a.mid = b.mid and
        a.time = b.maxV

SQLFiddle 演示 http://sqlfiddle.com/#!2/6af44/9

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

如何为每个成员选择最新的输入? 的相关文章

  • 正确显示mySQL一对多查询结果

    我有两张桌子 TRIPS tripID clientID and LEGS legID depart arrive tripID TRIPS 与 LEGS 具有一对多关系 因为有多个legID s per tripID 我需要以以下格式显示
  • PHP:使用输入和输出参数(不是“INOUT”)调用 MySQL 存储过程

    我想从 PHP 调用 MySQL 中的存储过程 该过程需要输入and输出参数 not INOUT 参数 举一个简单的例子 假设我在 MySQL 中有以下存储过程 DELIMITER DROP PROCEDURE IF EXISTS test
  • 不唯一的表/别名

    因此 我尝试使用多个联接来运行此查询 以获得我想要的精确行 但我不断收到此错误 不唯一的表 别名 ss prices 我正在运行的查询 select ss accounts id ss accounts bot acc id ss acco
  • 为什么 sql 字段名称中不应该包含逗号?

    人们一直告诉我列名中不应包含空格 我只是想知道 这是为什么 这是我为学校创建的一些数据库表遇到的问题 字段名称包括 Preble 和 Darke 相反 它们需要是 普雷布尔县 俄亥俄州 和 达克县 俄亥俄州 如果它们是行名称 我只需创建一个
  • 如何在 Windows 上安装 PHP 的 PDO 驱动程序?

    我在 Windows 服务器上安装了 Apache PHP 5 6 和 MySQL 5 7 在 php ini 中 我启用了以下内容 extension php mysql dll extension php mysqli dll exte
  • MySQL 错误 1290 (HY000) --secure-file-priv 选项

    我试图在我的脚本中使用以下代码将 MySQL 脚本的结果写入文本文件 SELECT p title p content c name FROM post p LEFT JOIN category c ON p category id c i
  • MySQL:你能指定一个随机限制吗?

    有没有办法在 SQL MySQL 中随机化限制数字 我希望能够做的是在查询中获取随机数量的结果以在插入子查询中使用 而无需任何服务器端脚本 我希望能够作为假设说明运行的查询是 SELECT id FROM users ORDER BY RA
  • Rails 多租户架构,限制多个租户的访问范围

    目前我们有一个单租户数据库架构 MySQL 运行着超过 100 个数据库 我们使用 Apartment gem 切换子域上的数据库连接 一切都很顺利 然而 我们现在需要创建所谓的 伞 客户端 它可以访问一组现有客户端的所有数据 我不认为这对
  • 自动将所有mysql表转储到单独的文件中?

    我想将每个 mysql 表转储到单独的文件中 手册指出其语法是 mysqldump options db name tbl name 这表明您事先知道表名称 我现在可以设置知道每个表名称的脚本 但是假设我在路上添加了一个新表并且忘记更新转储
  • MySQL 子查询返回多行

    我正在执行这个查询 SELECT voterfile county Name voterfile precienct PREC ID voterfile precienct Name COUNT SELECT voterfile voter
  • MySQL 触发器和 SUM()

    我有两张桌子 学生桌和家庭桌 在学生中 我有列 st venue 和total venue 家里我有收入 Total Revenue 是学生 st 收入与家庭收入之和 其中 family id student student id stud
  • Spark SQL/Hive 查询通过 Join 永远持续下去

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

    如何在 MySQL 查询中将行转换为列 您可以将行变成a列与GROUP CONCAT 但您无法以任何自动方式转置整个结果集 您可以编写手动生成每一列的查询 也可以在应用程序中执行此操作 以下是有关编写复杂查询来模拟转置的教程 http ww
  • PDO::commit() 成功或失败

    The PHP PDO 提交 http www php net manual en pdo commit php文档指出该方法成功时返回 TRUE 失败时返回 FALSE 这是指beginTransaction 和commit 之间的语句执
  • 使用MySQL计算单个表中借方和贷方的余额

    下面的 MySQL 表包含带有关联金额的借方或贷方 操作 如何选择具有非零 余额 的所有 CLIENT ID 我尝试将表连接到自身以计算所有借方和贷方总额 但有些东西无法正常工作 CLIENT ID ACTION TYPE ACTION A
  • 基本表创建 fpdf

    我找不到使用 fpdf 制作表格并从 mysql 数据库获取数据的合适教程 我只是想知道如何创建一个 我在网上尝试示例时遇到了很多错误 例如 我有 名字 中间名 姓氏 年龄 和 电子邮件 列 如何使用 fpdf 创建表格并回显数据库中的条目
  • 如何修复 InterfaceError: 2003: 无法连接到“127.0.0.1:3306:3306”上的 MySQL 服务器(11001 getaddrinfo 失败)

    我的MySQL连接成功但是遇到这个界面错误 import mysql connector db mysql connector connect host 127 0 0 1 3306 user root passwd teja databa
  • 从 PDO 准备好的语句中获取原始 SQL 查询字符串

    在准备好的语句上调用 PDOStatement execute 时 有没有办法让原始 SQL 字符串执行 出于调试目的 这将非常有用 我假设您的意思是您想要最终的 SQL 查询 并将参数值插入其中 我知道这对于调试很有用 但这不是准备好的语
  • 数据表 - 服务器端处理 - 数据库列合并

    我目前正在使用 DataTables 1 10 5 服务器端处理功能 http www datatables net examples data sources server side html http www datatables ne
  • 我可以在一个查询中更新/选择表吗?

    我需要在查看页面时选择数据并更新 视图 列 有没有一种方法可以在一个查询中执行此操作 或者我是否必须使用不同的查询 如果您不想 不需要使用事务 则可以创建一个存储过程 该过程首先更新视图计数 然后选择值并将其返回给用户

随机推荐

  • PySpark 2.x:以编程方式将 Maven JAR 坐标添加到 Spark

    以下是我的 PySpark 启动片段 非常可靠 我已经使用它很长时间了 今天我添加了两个 Maven 坐标 如图所示spark jars packages选项 有效地 插入 Kafka 支持 现在通常会触发依赖项下载 由 Spark 自动执
  • 如何从 PHP 调用网站服务?

    我的问题如下 我的服务器上有一个 EmailReports php 我用它来发送邮件 例如 电子邮件受保护 cdn cgi l email protection 什么 123456 pdf 我无法修改 EmailReports php 因为
  • 快速查找字符串是否在数组中的方法

    在 Ruby 中 查找字符串是否在数组中 include x 非常慢 如果将该数组更改为集合 则BAM 闪电般的快速查找 在 JavaScript 中 没有集合 数组查找 indexOf x gt 0 也是very很慢 但是我需要在脚本中执
  • jquery DomWindow 用于网页上的所有链接

    是否可以实现本页的示例3 http swip codylindley com DOMWindowDemo html http swip codylindley com DOMWindowDemo html适用于网页上的所有链接 不仅仅是带有
  • 如何使用回调机制?

    我必须实施一项信用卡申请 其中我必须只处理一个信用卡帐户 类似的操作credit debit pinChange 但对我来说问题是我必须使用 JAVA CALLBACK 机制在两种情况下通知用户 引脚更改时 当余额低于 5000 时 如何使
  • SaveFileDialog 阻止可移动驱动器

    我使用 SaveFileDialog 让用户在可移动驱动器上选择目录和文件名 然后我创建该文件 写入该文件 然后再次关闭它 到那时 文件本身尚未锁定 可编辑 可删除 但我无法弹出驱动器 因为 Windows 声称它仍在使用中 我必须先退出应
  • java中System.gc()和finalize()方法有什么区别?

    我对 java 的 system gc 和 Finalize 方法感到困惑 我们不能强制将垃圾对象收集到 JVM 我们可以在java代码中编写这两种方法 那么如果它们都用于垃圾收集 那么java提供两种垃圾收集方法有什么意义呢 请告诉我这两
  • Sublime Text - 修改 tmTheme 文件

    In the tmTheme file
  • 为什么不使用 django-admin startapp mysite 生成 urls.py?

    但必须由用户创建 project settings py mysite views py apps py models py user created urls py file 应用程序不需要有 url 视图或任何东西 它也可以只是模板的集
  • 何时删除 Git 中的分支?

    假设我们有一个稳定的应用程序 明天 有人报告了一个大错误 我们决定立即修复 因此 我们为 master 的修补程序创建了一个分支 将其命名为 2011 Hotfix 并将其向上推送 以便所有开发人员都可以协作修复它 我们修复了该错误 并将
  • UpSetR 按颜色集分组

    我盯着这个问题看了几个小时 似乎没有找到解决方案 我希望 upSet 图按集合着色 例如 library UpSetR movies lt read csv system file extdata movies csv package Up
  • 谱系图数据库[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 有人可以向我指出谱系图数据库的有效使用吗 我想学习 neo4j 并且使用 python 所以我想为自己制
  • Flutter - InkWell 对 Flex 内的 onTap 没有反应

    我想弄清楚 为什么onTap 我的 InkWell 内部的方法不起作用 InkWell 小部件位于Flexible小部件 这Flexible小部件也在里面 ARow 这是我的代码 TextEditingController controll
  • 对于小 x、大 y 值,有效的 HashCode() 是什么?

    我使用 HashMap 将 x y 值映射到笛卡尔平面上 对于非常小的 x 和非常大的 y 值 有效的 HashCode 是什么 目前我正在使用 public int hashCode return y 31 x Typical x y v
  • 计算 .Net BitArray 类中设置的位

    我正在实现一个库 其中广泛使用 Net BitArray 类 并且需要与 Java BitSet Cardinality 方法等效的方法 即返回设置的位数的方法 我正在考虑将其实现为 BitArray 类的扩展方法 简单的实现是迭代和计算位
  • Matlab 匿名函数 If else

    在 MATLAB 中 我尝试对元胞数组执行一个函数 但运气不佳 我想创建一个cellfun它检查是否str2double回报NaN值 然后执行str2double关于不存在的值NaNs 我试图使用一个匿名函数 其中包含 IF Else 类型
  • 在短语中搜索单词并返回匹配项

    我需要建立一个公式 如果在X列中 有B列的值 无论位置 则返回A的值 Column A Amoxicilina Azitromicina Cetoconazol Column B Amoxicilina Esomeprazol Clarit
  • 计算二维数组(矩阵)每列的总计

    给定下面的数组 如何创建具有匹配键的求和数组 arr alpha 1 2 3 4 5 beta 1 2 3 4 5 gamma 1 2 3 4 5 delta 1 2 3 4 5 这就是我最终想要的 4 8 12 16 20 这是最有效的方
  • CSS 类选择器

    我想选择一个divclass c id i c color red border 1px font size 25px background color yellow width 200px div class c change div 现
  • 如何为每个成员选择最新的输入?

    假设我有一个 MySQL 表 time mid field 1 field 2 100 1 32 54 100 2 0 34 100 3 44 99 200 1 0 45 200 2 0 45 200 3 4 59 200 4 45