查询某一行到结束的所有数据。网上看了很多SELECT * FROM table LIMIT 95,-1;
是错的。有说查SELECT COUNT(*)FROM table 替换-1.还有其他方法能做到吗?
没测试不知道对不?
楼主大人,可以通过逆向思维去完成这样的题目哟,首先我们将前面需要排除的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);