Mysql 选择列a上最大的两行,其中列b=1
如何获得列_a上2个最大数的完整行 其中列_b=1 尝试此操作(返回语法错误):Mysql 选择列a上最大的两行,其中列b=1,mysql,max,Mysql,Max,如何获得列_a上2个最大数的完整行 其中列_b=1 尝试此操作(返回语法错误): SELECT*,最大(id)-(或列a)- 从桌子上 其中列_b='1' 限制2 谢谢。如果您可以使用LIMIT(正如您所做的那样),它非常简单,只需让MySQL来完成这项工作: SELECT MAX(id) as maxID, column_a, column_b, column_c FROM table WHERE column_c = '1'; SELECT * FROM table WHERE c
SELECT*,最大(
id)-(或列a)-
从桌子上
其中列_b='1'
限制2代码>
谢谢。如果您可以使用LIMIT(正如您所做的那样),它非常简单,只需让MySQL来完成这项工作:
SELECT MAX(id) as maxID, column_a, column_b, column_c
FROM table
WHERE column_c = '1';
SELECT
*
FROM
table
WHERE
column_b = '1'
ORDER BY
id DESC
LIMIT 2
一种选择是添加一个
ORDER BY子句,例如
SELECT t.*
FROM table t
WHERE t.column_b = '1'
ORDER BY t.column_a DESC
LIMIT 2
这将得到两行,它们的列a
值最大(“最大”)
(问题询问的是“a列上有两个最大的数字”,但OP查询没有对a列的任何引用。)谢谢,LIMIT似乎没什么作用……只得到一行!?哎呀。是的,Max()只会带来一排。我的错误。谢谢-(注意:'column_a'是'id'…谢谢简单的解决方案是思考所需的最大值或最大值…谢谢你的答案也有效!它基本上与@spencer的易读性相同。。。