MySQL排序后如何选择更多行?

2024-01-24

我有一个表,其中有 10 个结果。我们来说说以下几点:

        id      user    number 
        --      ----    ------

        1       user1   10
        2       user2   5
        3       user3   30
        4       user4   45
        5       user5   5
        6       user6   22
        7       user7   10
        8       user8   40
        9       user9   90
        10      user10  65

我基本上想按“数字”值对它们进行排序。

所以它应该是这样的:

        SORT    id      user    number 
        ----    --      ----    ------

        1       2       user2   5 
        2       5       user5   5
        3       1       user1   10
        4       7       user7   10
        5       6       user6   22
        6       3       user3   30
        7       8       user8   40
        8       4       user4   45
        9       10      user10  65
        10      9       user9   90

排序后,我想从(例如)id = 6(其数字为22)的结果和其上方的其他2个结果(在本例中:id = 7和1)和其他2个结果中选择*在其下方(在本例中:id = 3 和 8)。

所以当我搜索 id = 6 时,返回结果应该是这样的:

        SORT    id      user    number 
        ----    --      ----    ------

        3       1       user1   10
        4       7       user7   10
        5       6       user6   22
        6       3       user3   30
        7       8       user8   40

如果我选择所有内容,我可以很容易地在服务器端执行此操作,但是这里会有大量数据,所以我宁愿只选择那些适合我的搜索的数据。

有什么方法可以用 MySQL 做到这一点吗?


这是获得您想要的东西的典型方法:

select t.*
from ((select t.*
       from table t
       where number <= (select number where id = 6 limit 1)
       order by number desc
       limit 3
      ) union all
      (select t.*
       from table t
       where id > (select number where id = 6 limit 1)
       order by number asc
       limit 2
      )
     ) t
order by number;

这假设当出现重复项时,您仍然需要 5 行输出。它还假设前两行或最后两行少于五行是可以的。上的索引id将有助于此查询的性能。

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

MySQL排序后如何选择更多行? 的相关文章

  • 在 Entity-Framework Core 中批量插入到 MySQL [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有一个由约 10 000 个对象组成的列表 比方说类Person 我需要将其插入到 MySQL 表中
  • 查找缺失值

    我有一个表 有 2 个重要的列 DocEntry WebId 样本数据就像 DocEntry WebId 1 S001 2 S002 3 S003 4 S005 现在我们可以注意到 在 WebId 列中 S004 丢失了 我们如何通过查询找
  • 有向图 SQL

    我有以下数据集 它表示有向图中的节点 CREATE TABLE nodes NODE FROM VARCHAR2 10 NODE TO VARCHAR2 10 INSERT INTO nodes VALUES GT TG INSERT IN
  • 如何使用 pgAdmin 恢复 postgreSQL 转储文件?

    我有一个 dmp 文件 想要从中恢复数据库 使用 pgAdmin 我该怎么做 在 PgAdmin3 内 在您正在使用的服务器中创建一个新数据库 右键单击该数据库并选择 恢复 使用 浏览器 按钮选择 dmp 文件 选择 恢复 开始恢复数据库
  • 在 JSP 中迭代列表对象

    我正在做一个项目来尝试自学 spring 和 struts 我目前卡在 JSP 页面上 我有一个 pojo 类 其中包含带有 getter setter 的变量 eid 和 ename 我还有一个 sql 中的表 其具有相同的值和六个填充行
  • 从 Visual Studio 调试 SQL Server 2005 中的存储过程?

    我在这里和其他地方看到很多令人沮丧的问题 但没有明确的答案 我试图让存储过程进行调试 但没有成功 客户端 VS2005或VS2008 两者都不起作用 当我从存储过程上下文菜单中选择 步入存储过程 时 我在调试窗口中看到 已被用户取消 这就是
  • 数据太长,导致列错误(包含国家字符)

    我必须移植一些DBS变成独立的MySQL版本 5 0 18运行于Windows 7 64 位我遇到了一个困扰我的问题 如果我尝试将任何国家 Unicode 字符插入varchar我收到错误 ERROR 1406 22001 Data too
  • 如何从表中选择层次结构中的最低级别

    我有一个具有父 子关系的表 Table A Column Id int Column Parent Id int Column Description text 一组示例数据如下 999 NULL Corp 998 999 Div1 997
  • WHERE 子句或 ON 子句中的 INNER JOIN 条件?

    我今天输错了一个查询 但它仍然有效并给出了预期的结果 我的意思是运行这个查询 SELECT e id FROM employees e JOIN users u ON u email e email WHERE u id 139840 但我
  • SimpleSAMLPHP 重定向循环

    我们正在尝试使用自定义 mysql 数据库设置 sso 但它在以下两个请求之间进入无限循环 POST http 192 168 0 15 simplesaml module php core loginuserpass php 设置Cook
  • 使用 Hibernate Dialect 设置表字符集/排序规则?

    我使用 Hibernate MySQLInnoDB Dialect 来生成 DDL hibernate cfg xml
  • 无效的 PDO 查询不会返回错误

    下面的第二条 SQL 语句在 phpMyAdmin 中返回错误 SET num 2000040 INSERT INTO artikel artikel nr lieferant nr bezeichnung 1 bezeichnung 1
  • ON DUPLICATE KEY UPDATE 的自动增量过多

    我有一个包含列的基本表 id 主要是AI 名称 唯一 etc 如果唯一列不存在 则插入该行 否则更新该行 INSERT INTO pages name etc VALUES bob randomness ON DUPLICATE KEY U
  • 在无文本搜索查询中使用 sphinx 与 MySQL

    我有这样的疑问 假设我有一个大表 与一个较小的用户表有关系 这个想法是在那个真正的大表中搜索大于给定日期的日期并按分数 例如大整数 排序 并同时获取相关的用户信息 此查询的结果大约每 10 分钟就会更改一次 所以 没有文本搜索 但我有一个非
  • 如何将另一列的整数值添加到日期列?

    我试图将整数添加到日期 但出现以下错误 1064 你的 SQL 语法有错误 检查与您的 MySQL 服务器版本相对应的手册 了解在第 6 行的 wp OrderDate INTERVAL WPProduct Duration DAY AS
  • 根据 SQL 查询的集合生成成员的“散点图”结果

    我有一个staff包含工作人员的数据库表 其中user no and user name列 我还有一个 department 包含员工可以加入的部门的表 其中dept no and dept name作为列 因为员工可以是多个部门的成员 所
  • $_SESSION 中保存大量信息可以吗?

    我需要存储许多数组 SESSION以防止从 MySQL 检索信息 可以吗 其中 太多 的信息有多少 SESSION还是没有 太多 谢谢 附 或者更好地使用http php net manual en book memcache php ht
  • 无法在 Centos 上安装 php-mysqli 扩展

    我正在尝试将 mysqli 扩展安装到 php yum install php mysqli 我收到下一个错误 Transaction Check Error file usr share mysql charsets Index xml
  • Linq-to-entities,在一个查询中获取结果+行数

    我已经看到了有关此事的多个问题 但它们已经有 2 年 或更长 的历史了 所以我想知道这方面是否有任何变化 基本思想是填充网格视图并创建自定义分页 所以 我还需要结果和行数 在 SQL 中 这将类似于 SELECT COUNT id Id N
  • 我的数据库有错误

    创建表时如下 create table Ticket ticket id integer not null primary key AirlineName varchar not null CustomerName varchar from

随机推荐

  • 背景图像 url() 在实时服务器上有效,但当我在浏览器中打开 index.html 时却不起作用?

    由于其他属性适用 因此正确选择了该元素 没有控制台错误 我努力了 img 英雄 jpg 当我点击 VS Code 中的链接时有效 img 英雄 jpg 当我点击时起作用 英雄 jpg 当我点击时工作 img 英雄 jpg 不起作用 完整路径
  • 将动态 Web 项目导入 Eclipse

    我一直在 Eclipse 中开发一个动态 Web 项目 我最近重新安装了我的操作系统 并且使用了干净的 Eclipse 我可以导入我的网络项目 但是当我尝试吃午饭 在服务器上运行 时 我总是收到此消息 The selection canno
  • 倾斜的div边框透明度

    所以 我知道如何使用 after 和边框为现代布局制作倾斜的 div 但是 我想知道您是否可以使用它通过透明度裁剪掉 div 的一部分 例如 假设我有一排带有背景图像的卡片 我想要在这些卡片上产生倾斜效果 但是 这里的倾斜只是页面 不是卡片
  • /rest-auth/password/reset/ 处的 NoReverseMatch

    我有一个带有角度前端的 Django 应用程序 当我尝试从前端发送密码重置请求时 出现以下错误 使用参数 和关键字反转 password reset confirm 参数 u uidb64 MTE u token u 3z4 eadc7ab
  • HTTP 网站上出现“阻止加载混合活动内容”

    Problem 我正在开发一个使用 HTTP 协议提供服务的网站 在开发中 我使用 Webpack 及其 webpack dev server 它在本地提供页面服务http localhost 9090 我很惊讶地在 Firefox 58
  • 如何创建唯一 ID,例如 YouTube?

    我一直想知道他们是如何以及为什么这样做 一个例子 http youtube com watch v DnAMjq0haic http youtube com watch v DnAMjq0haic 这些 ID 是如何生成的 并且不会重复 这
  • ASP.NET Identity 出现“创建模型时无法使用上下文”异常

    为什么当我们调用 AccountApiController Register 方法时会发生这种情况 什么试图使用上下文 什么试图创建上下文 我们如何避免这种情况 我们如何调试这个 Message 发生错误 ExceptionMessage
  • 覆盖命名空间中导入的函数

    As the termplotR 中的函数包含一些奇怪的代码 这些代码给我带来了烦人的错误 我想在我自己的测试代码中覆盖它 直到找到更永久的解决方案 问题是更改的函数没有被加载mgcv包裹 这mgcv包从其命名空间中的 stats 包加载
  • 在 Django Admin 中为 list_filter 创建自定义过滤器

    我想为 django admin 制作自定义过滤器 而不是普通的 is staff 和 is superuser 我读过这个列表过滤器 https docs djangoproject com en dev ref contrib admi
  • 通过 PHP 和 cURL 访问 NodeJS / Socket.io

    我正在运行 nodejs socket io v 0 7 服务器将数据推送到 Web 客户端 这很有用 为了扩展应用程序 我需要通过 php 触发 影响 socket io 我知道一个使用 cURL over http 和 nodejs h
  • 推荐的货币价值四舍五入方法

    首先看到下面的问题 SetRoundMode rmUp 并将 round 值四舍五入 如 10 结果为 10 0001 https stackoverflow com questions 565797 setroundmodermup an
  • 错误:胆怯地拒绝“sudo brew install”为 Mac OSX Mountain Lion 安装glue 0.3

    我正在尝试为 OXS Mountain Lion 安装glue 0 3 并在安装自制软件后遇到此错误 错误 懦弱地拒绝sudo brew install您可以将brew 与sudo 一起使用 但前提是brew 可执行文件由root 拥有 但
  • 玩2.3 多个模块的requireJs优化和shim

    这是我当前的 Play 2 2 x requireJS 设置 2 3之后还能继续用吗 我在 2 3 文档中找不到 requireJs 或 requireJsShim requireJs Seq mainAccount js mainOrg
  • 如何使用递归编程在列表框中填充多个类别

    I have a categories table which is set up to allow an infinite number of sub category levels I would like to mimic the f
  • 在 Windows Phone 上实现可滚动表格

    我需要创建一个电视指南应用程序 要求是 UI 必须是您可以在此处看到的 UI 的副本 raspored bnet hr http raspored bnet hr 正如您所看到的 有很多数据 所以 基本上它是一个大的可滚动表格 由于 Win
  • 将 C++ 模板参数限制为子类

    如何强制模板参数T成为特定类的子类Baseclass 像这样的东西 template
  • Django Ckeditor 图像浏览器找不到图像

    所以我正在建立一个简单的博客来跟踪我的项目 我决定使用 CKeditor 作为所见即所得编辑器 除了图像部分之外 我能够使其所有内容正常工作 当我点击 图像浏览 时 我无法查看服务器中的图像 并且每当我上传图像时 它都会上传 但我无法查看它
  • 颠覆外部是一种反模式吗?

    Subversion 允许您使用以下方式嵌入其他存储库的工作副本外部因素 http svnbook red bean com en 1 1 ch07s04 html 可以轻松地对项目中的第三方库软件进行版本控制 虽然这些对于库的重用和版本控
  • 使用发送事件通过编程创建的 Dropzone 发送附加数据

    我有以下 例如简化的 角度指令 它创建一个放置区 directives directive dropzone dropZoneFactory function dropZoneFactory use strict return restri
  • MySQL排序后如何选择更多行?

    我有一个表 其中有 10 个结果 我们来说说以下几点 id user number 1 user1 10 2 user2 5 3 user3 30 4 user4 45 5 user5 5 6 user6 22 7 user7 10 8 u