MySQL 中的 ROW_NUMBER()

2023-12-12

MySQL 有没有一种很好的方法来复制 SQL Server 功能ROW_NUMBER()?

例如:

SELECT 
    col1, col2, 
    ROW_NUMBER() OVER (PARTITION BY col1, col2 ORDER BY col3 DESC) AS intRow
FROM Table1

然后我可以添加一个条件来限制intRow到 1 以获得最高的单行col3对于每个(col1, col2) pair.


MySQL 中没有排名功能。您可以获得的最接近的是使用变量:

SELECT t.*, 
       @rownum := @rownum + 1 AS rank
  FROM YOUR_TABLE t, 
       (SELECT @rownum := 0) r

那么对于我来说这会如何呢?我需要两个变量,col1 和 col2 各一个?当 col1 更改时,Col2 需要以某种方式重置..?

是的。如果是 Oracle,您可以使用 LEAD 函数在下一个值处达到峰值。值得庆幸的是,Quassnoi 涵盖了您需要在 MySQL 中实现的逻辑.

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

MySQL 中的 ROW_NUMBER() 的相关文章

  • 最近邻居的 Postgis SQL

    我正在尝试计算最近的邻居 为此 我需要传递一个参数来限制与邻居的最大距离 例如 半径1000米内最近的邻居是哪些 我做了以下事情 我用数据创建了表 id name latitude longitude 之后 我执行了以下查询 SELECT
  • 如何重命名 MySQL 数据库(更改架构名称)?

    如何快速重命名 MySQL 数据库 更改其架构名称 通常我只是转储数据库并使用新名称重新导入它 对于非常大的数据库来说 这不是一个选项 显然RENAME DATABASE SCHEMA db name TO new db name 做了坏事
  • 通过 SQLAlchemy 获取随机行

    如何使用 SQLAlchemy 从表中选择一个或多个随机行 这在很大程度上是一个特定于数据库的问题 我知道 PostgreSQL SQLite MySQL 和 Oracle 具有通过随机函数排序的能力 因此您可以在 SQLAlchemy 中
  • 如何对多行的一列值求和?

    我有这个表 我想添加几行的 change 列的值 或者更准确地说 从 ne 值为零的行到 ne 值为零的下一行 不是第二个本身 任何答案将不胜感激 rn date ne change 0 2008 12 07 0 10330848398 1
  • 维护/更新mysql中的记录顺序

    我在 mySql 中有一个记录表 我需要按照用户指定的方式维护它们的订单 所以我添加了一个 位置 列 当我移动特定记录时更新所有记录的 SQL 语句是什么 我有类似的东西 UPDATE items SET position 2 WHERE
  • SQL Server 2012:有条件地增加计数器用户 ROW_NUMBER()

    我正在尝试申请ROW NUMBER 根据特定条件增加计数器 我的数据如下所示 目标计数器是Prep column id DSR PrepIndicator Prep 1662835 1 1 1 1662835 14 2 2 1662835
  • SQLAlchemy - 批量插入忽略:“重复条目”

    我有一个名为user data 列id and user id作为唯一的密钥 我想将一些历史数据导入到该表中 我用批量插入映射 http docs sqlalchemy org en rel 1 0 orm session api html
  • 当与“<”或“>”运算符一起使用时,MySQL 不使用 DATE 上的索引吗?

    我正在使用解释来测试这些查询 col 类型是 DATE 这使用索引 explain SELECT events FROM events WHERE events date 2010 06 11 这不 explain SELECT event
  • 如何将 javax.persistence.Column 定义为 Unsigned TINYINT?

    我正在基于 MySQL 数据库中的现有表创建 Java 持久性实体 Bean 使用 NetBeans IDE 8 0 1 我在这个表中遇到了一个字段 其类型为 无符号 TINYINT 3 我发现可以执行以下操作将列的类型定义为 unsign
  • TSQL - 生成文字浮点值

    我理解比较浮点数时遇到的许多问题 并对它们在这种情况下的使用感到遗憾 但我不是表格作者 只有一个小障碍需要克服 有人决定使用浮点数 就像您期望使用 GUID 一样 我需要检索具有特定浮点值的所有记录 sp help MyTable Colu
  • MySQL:如何获取每个分组的x个结果数[重复]

    这个问题在这里已经有答案了 可能的重复 mysql 在 GROUP BY 中使用 LIMIT 来获取每组 N 个结果 https stackoverflow com questions 2129693 mysql using limit w
  • 如何连续添加起始行和下一行的值

    我只想创建一个 sql 查询 结果就像图片上的那样 类似于 SQL 中的斐波那契数列 Ex Column 1 10 则 Result 列的值为 Result 10 因为这是第一行 然后假设column1第二行的值为50 那么Result第二
  • 自动删除主键序列中的间隙

    我正在创建一个网页 该网页根据用户操作将数据存储到 MySQL 数据库中 数据库有很多行 行的主键是列 rowID 它只是按顺序对行进行编号 例如 1 2 3 4 用户可以选择删除行 问题是当用户删除最后一行以外的行时 rowID 中有一个
  • hive sql查找最新记录

    该表是 create table test id string name string age string modified string 像这样的数据 id name age modifed 1 a 10 2011 11 11 11 1
  • 将 MySQL 结果作为 PHP 数组

    mysql 表 config name config value allow autologin 1 allow md5 0 当前的 php 代码 sth mysql query SELECT rows array while r mysq
  • C# using 语句、SQL 和 SqlConnection

    使用 using 语句 C SQL 可以吗 private static void CreateCommand string queryString string connectionString using SqlConnection c
  • 没有为 1 个或多个必需参数给出值。更新SQL

    我正在编写一个程序 当用户在列表视图上选择记录时 该程序会更新密码或积分 我收到错误 没有为 1 个或多个必需参数给出值 我不知道如何纠正 我是否遗漏了一些明显的东西 Dim sql As String UPDATE Users SET P
  • 我可以将 MAMP (MySQL) 或 XAMPP (MySQL) 与 Ruby on Rails 3 一起使用吗?

    我可以将 MAMP MySQL 或 XAMPP MySQL 与 Ruby on Rails 3 一起使用吗 我从 MYSQL com 安装了 MySQL 但遇到了很多麻烦 所以我喜欢使用 MAMP XAMPP Mysql 有人这样做吗 另外
  • 分组和切换列和行

    我不知道这是否会被正式称为枢轴 但我想要的结果是这样的 Alex Charley Liza 213 345 1 23 111 5 42 52 2 323 5 23 1 324 5 我的输入数据采用这种形式 Apt Name
  • “pdo_mysql”已禁用,我无法启用它。我在 iMac 7.1 OSX 10.6.8 上安装了 MAMP v. 3.0.4

    pdo mysql 已禁用 我无法启用它 我在 iMac 7 1 OSX 10 6 8 上安装了 MAMP v 3 0 4 在我的 phpinfo 页面上 我可以看到唯一启用的 PDO 是 sqlite 如果我查看 php 5 5 10 扩

随机推荐

  • 打开键盘时无法滚动到结果末尾 (Windows Phone)

    我正在开发 Windows Phone 应用程序 但遇到了这个问题 我有一个显示搜索结果的列表控件 但是当打开键盘时 由于键盘原因 某些结果不可见 有没有办法将控件缩小到键盘边框 为了看到所有的结果 即使键盘打开 我也想滚动直到结果末尾 有
  • Java正则表达式:重复组?

    如何在 Java Regex 中定义重复组 假设一个 2 位数字 0 9 2 多次由 分隔 12 34 98 11 这是可能的还是唯一的机会 编辑 我喜欢验证和提取 在Java中你也可以使用Scanner用于此目的的 API final P
  • 持续交付的原则

    如上所述here 以下是持续交付的原则 Every build is a potential release Eliminate manual bottlenecks Automate wherever possible Have auto
  • 创建高级过滤器

    我正在尝试从 C 在 Excel 中创建高级过滤器 以将唯一数据从一张工作表复制到另一张工作表 至少我在 Excel 中得到它 并且如果我使用这样的互操作 Excel Range rang sheet2 get Range A2 Excel
  • 代码点火器 + HMVC + REST

    我正在开发基于 Codeigniter HMVC 的应用程序 我正在尝试添加一个新模块 我用菲尔 斯特金的REST 控制器 2 6 0 and Format用于将 REST API 创建为模块的库 当我尝试获取例如http api exam
  • PHP 分层数组 - 父级和子级

    我使用 PHP 和 mySQLIdiorm 这可能不相关 我的 PHP 数组 这是父母和孩子之间的关系 0 是根父级 示例 根父级 0 有子级 33 其子级 27 有 孩子 71 如果需要解决问题 可以更改此数组结构 array 33 gt
  • 更新资源管理器配置而不重新启动它

    我想知道是否有一种方法可以刷新 HKLM 注册表项 HKCU SOFTWARE Microsoft Windows CurrentVersion Policies Explorer 无需重新启动 shell 我希望能够在不重新启动资源管理器
  • NestJs/TypeORM:如何保存多对多

    我正在尝试保存多对多关系 每个实体本身都运行良好 这是我正在使用的两个实体文件 location entity ManyToMany type gt User user gt user locations eager true cascad
  • mod-rewrite 转发而不改变 URL

    创建 漂亮 URL 时 我的 Apache 配置有一个小问题 我已经到了输入 或链接 到的阶段 索引 html 将您转发至 index php pageID Forside 这正是我想要的 但是如何才能让index html留在浏览器的地址
  • 如何使用VS调试服务器实现基本的HTTP认证?

    我正在为 ActiveX HTTP 控件制作一个测试装置 并且需要创建一个可以安全发布的网站 为了简单起见 我使用 VS 调试服务器运行 Web 应用程序 Web 应用程序项目是测试应用程序解决方案的一部分 AX 控件不支持 NTLM 身份
  • 无法使用 swift 3 从其数据源获取单元格

    我将以下 UITableViewController 作为 searchResultsController 附加 import UIKit import MapKit class LocationSearchTable UITableVie
  • 如果我在一页上多次使用相同的#id,除了验证错误“ID 已定义”之外,我会遇到什么实际问题?

    首先 我总是使用一个 ID 只是问这个问题才能了解其背后的深层原因 这只是 W3C 验证的问题吗 或更多 我会遇到任何实际问题还是这只是验证逻辑 看这个例子http jsbin com aniqi它适用于所有浏览器 只是验证给出错误 upd
  • 对签署 Android APK 感到困惑?

    我已按照以下步骤操作官员说要对我的 Android 应用程序进行数字签名 要在发布模式下签名 他们说要使用 keystore文件及其凭据 例如this 我正在使用 android studio 所以我得到了 jks文件代替 那么我需要在哪里
  • onPreferenceClick 和 OnPreferenceClickListener

    我正在尝试在我的java代码中评估我的偏好 以便启用 禁用其他选项 如果他们选择不执行其他选项 到目前为止 我试图只实现 OnPreferenceClickListener 但是我从未看到来自变化 我究竟做错了什么 似乎还有很多类似的其他问
  • 小端 - 大端问题

    小端与大端 大端 0x31014950小端 0x50490131 然而使用这种方法 inline unsigned int endian swap unsigned int x return x 0x000000FF lt lt 24 x
  • 无法将指向字符的指针分配给字符数组

    我需要分配一个指向字符数组的指针 char str1 17 char h hey str1 h 但我收到这个错误 error C2440 cannot convert from char to char 17 我认为数组名称与指向字符的指针
  • 使用“std::greater”通过“priority_queue”创建最小堆的原因

    我想知道为什么使用创建最小堆priority queue the std greater应该使用 std priority queue
  • 在 IE 中获取计算出的背景颜色为 rgb

    我正在尝试使用以下代码在 IE 中获取 RGB 背景颜色 function getStyle elem name J S Pro Techniques p136 if elem style name return elem style na
  • 如何从 mod_php 查看 PHP ldap_* 函数的 stderr(LDAP_OPT_DEBUG_LEVEL=7)

    我可以从 PHP 5 4 16 CLI 运行以下命令 ldap set option NULL LDAP OPT DEBUG LEVEL 7 conn ldap connect hostname ldap bind conn ldaprdn
  • MySQL 中的 ROW_NUMBER()

    MySQL 有没有一种很好的方法来复制 SQL Server 功能ROW NUMBER 例如 SELECT col1 col2 ROW NUMBER OVER PARTITION BY col1 col2 ORDER BY col3 DES