mysql数据库写sql语句可以使用top指令吗?

[size=large]我使用的mysql数据库,写了一个分页查询的sql语句,目的是即使数据库中删除了一条语句也能够让每页显示3条记录,语句如下:
select top 3 * from goods where goodsId not in (select top 3 goodsId from goods);

但是在mysql中无法执行如上语句,请问是不是mysql中不能使用top,有什么办法可以表示如上的语句,谢谢![/size]

2个回答


你写的分页sql对SQLServer是个好方法,但是MySQL不支持top关键字
MySQL有个更好用的关键字limit a,b a是起始索引位置,b是要查询的记录条数
比如有1、2、3、4、5 五条数据,想要查出2、3、4三条 limit 1,3 起始索引时从0开始的

你的改成这样就ok了
select * from goods limit 3,3

比top好用多了

这么用:
select * from goods where goodsId not in (select top 3 goodsId from goods) limit 3;

如果选择第n条 到 n+3条记录
select * from goods where goodsId not in (select top 3 goodsId from goods) limit n,n+3;

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问