如何在mysql中获得第二高和第二低的值?
如何获得低于最高值的所有值。i、 e第二高、第三高等等 我想选择id=14和12。条件是第二和第三高的id值,其中节='abc' 我的查询是这样的:从tbl_front_post中选择id,其中id在select id from tbl_front_post中,其中id如何在mysql中获得第二高和第二低的值?,mysql,phpmyadmin,subquery,Mysql,Phpmyadmin,Subquery,如何获得低于最高值的所有值。i、 e第二高、第三高等等 我想选择id=14和12。条件是第二和第三高的id值,其中节='abc' 我的查询是这样的:从tbl_front_post中选择id,其中id在select id from tbl_front_post中,其中id
注意:我无法写入id=15,因此id=maxid-1,因为id可能随时更改使用子查询查找最大值:
select id
from tbl_front_post
where id < (SELECT MAX(id) from tbl_front_post where section = 'abc') and
section = 'abc'
-- order by id desc
-- limit 2 -- for 2nd and 3rd, or however many results you want
如果id列仅对每个部分具有唯一的值,那么这将非常有效。在这种情况下,我们不必担心最大id的关系。使用子查询查找最大值:
select id
from tbl_front_post
where id < (SELECT MAX(id) from tbl_front_post where section = 'abc') and
section = 'abc'
-- order by id desc
-- limit 2 -- for 2nd and 3rd, or however many results you want
如果id列仅对每个部分具有唯一的值,那么这将非常有效。在这种情况下,我们不必担心最大id的关系。您可以使用ORDER BY和LIMIT来完成此操作
SELECT id
FROM tbl_front_post
WHERE section = 'abc'
ORDER BY id DESC
LIMIT 2, 2
限制x,y表示从订单中的x行开始返回y行。您可以使用order BY和LIMIT来执行此操作
SELECT id
FROM tbl_front_post
WHERE section = 'abc'
ORDER BY id DESC
LIMIT 2, 2
限制x,y意味着从x行开始按顺序返回y行。尝试如下操作:
SELECT * FROM tbl_front_post
WHERE section = 'abc' order by id desc LIMIT 1, 18446744073709551615;
这将为您提供section=abc的所有行,但从第一行到最后一行除外
注意:18446744073709551615只是一个大数字,表示希望所有行都结束;:
检索从某个偏移量到
结果集,您可以使用一些大的数字作为第二个参数
试着这样做:
SELECT * FROM tbl_front_post
WHERE section = 'abc' order by id desc LIMIT 1, 18446744073709551615;
这将为您提供section=abc的所有行,但从第一行到最后一行除外
注意:18446744073709551615只是一个大数字,表示希望所有行都结束;:
检索从某个偏移量到
结果集,您可以使用一些大的数字作为第二个参数
我需要第二高和第三高,所以我需要第二高和第三高,等等。限额不应该是18446744073709551615;除了endnice想法的第一行,但是可以有任意数量的行。。现在有3行具有section='abc'。但行数可以随时更改。限制是否应为11844744073709551615;除了endnice想法的第一行,但是可以有任意数量的行。。现在有3行具有section='abc'。但行数可以随时更改。为什么是负号?为什么是负号?