mysql 选择所有满足第一个和第二个最低值的行?

标签 mysql sql select sql-order-by limit

我想知道如何选择满足结果表第一和第二低值的每个用户?

表格测试

NAME    VALUE
John    8
Marie   8
Luis    10
Carlos  10
Leo     13
Max     14

所以在这种情况下的结果是

NAME    VALUE
John    8
Marie   8
Luis    10
Carlos  10

非常感谢!

顺便说一句,我在 google 和所有东西上搜索了我的家庭作业,除了查询表然后使用 PHP 为我过滤之外什么也没想到,这对性能不利。

@Aziz 我收到错误:#1235 - 此版本的 MySQL 尚不支持“LIMIT & IN/ALL/ANY/SOME 子查询”

谢谢

感谢大家提供大量有用的答案!

以防万一像我一样陷入有趣的结果,我需要更多过滤器并且必须添加到查询中,如下所示:

results_temp 中选择 * semana='semana6' 和 total_pontos 在 ( 选择 * 从 ( 选择不同的 total_pontos 来自 results_temp

   WHERE semana='semana6'

  ORDER BY `total_pontos` 
  LIMIT 0,2

) 作为 t )

问候

最佳答案

试试这个:

SELECT * FROM Test WHERE `value` IN (
   SELECT * FROM (
      SELECT DISTINCT `value` 
      FROM Test 
      ORDER BY `value` 
      LIMIT 0,2
   ) AS t
)

关于mysql 选择所有满足第一个和第二个最低值的行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21043888/

相关文章:

MySQL 函数在主服务器中失败,但在 localhost 中工作

sql - 在 PostgreSQL 中使用 Jsonb_array_elements_text() 的 2 种方法

sql - 检查 clob 是否包含字符串 oracle

mysql - COMMIT 在 phpmyadmin (MySQL) 中不起作用

html - Bootstrap 4 样式选择

javascript - 为什么我的谷歌地图 Lat/Lng 变量不存储任何内容?

mysql - #1111 - 存储过程 mysql 中组函数错误的无效使用

javascript - Ember View 中未显示的选项 选择可编辑

mysql - MySQL WHERE 子句中的 CASE 或 COALESCE 性能

sql - 在 SQL Server 中计算排除周末(周一至周五)的天数