Sql语句 limit 使用,查询某一行到全部数据

查询某一行到结束的所有数据。网上看了很多SELECT * FROM table LIMIT 95,-1;
是错的。有说查SELECT COUNT(*)FROM table 替换-1.还有其他方法能做到吗?

先order by 呢

没测试不知道对不?

楼主大人,可以通过逆向思维去完成这样的题目哟,首先我们将前面需要排除的0到n行的id查出来,然后通过not exists去将这些行排除掉,这样得到的就会是第n行以后的记录了哟。

 select a.* from test a 
#排除与c相同的值(第1-2行)即为要求的值(3-最后一行)
where not exists(
    #查询需要排除的id
    select c.exp_id from (
        #查询需要排除的行(前2行)的主键值
        select b.id as exp_id from test b limit 0,2
    ) c where a.id = c.exp_id
)

这里的2,指的是总共要排除多少条记录。请在实际的SQL中根据自己的需要调整一下即可。我想以楼主的功底,这句简单的SQL自然不在话下。祝你好运!

SELECT * from base_user LIMIT 95,(SELECT COUNT(1) from base_user);这样会报错把,改成这样就可以查询了
SELECT * from base_user where id between 95 and (SELECT COUNT(1) from base_user);

学习了图片说明