mysql LIMIT使用问题

当限制数目大于存在数据数目时,查询出来的数据会重复。例如sql语句为select*fromtableLIMIT0,10但表中只有1条数据,出来的数据是10条一样的。请问怎... 当限制数目大于存在数据数目时,查询出来的数据会重复。
例如sql语句为select * from table LIMIT 0,10
但表中只有1条数据,出来的数据是10条一样的。
请问怎么怎么解决?多谢给位!
展开
 我来答
巨令羽闽又
2019-08-09 · TA获得超过2.9万个赞
知道大有可为答主
回答量:1.1万
采纳率:33%
帮助的人:577万
展开全部
这个语句是可能出问题的,考虑的情况不完整
因为当count(*)
*
0.2不是一个整数的时候就会报错
比如,你一共只有1条数据,那么你这个sql语句就是
limit
0,
0.2
所以只有在数据为10的倍数的时候,sql才能被正确执行
这里的limit的第二个参数,是要取出数据的条数,必须是整数
我建议你用脚本语言吧这个参数计算出来,处理正确正确之后再传入执行,或者使用mysql的取整函数
limit
0,
ceil(count(*)
*
0.2)
17号观察室
2013-09-04 · TA获得超过5730个赞
知道大有可为答主
回答量:3666
采纳率:66%
帮助的人:1378万
展开全部
楼主 limit用法很简单 帮你举个例子吧
select * from table limit m,n
其中m是指记录开始的index,从0开始,表示第一条记录
n是指从第m+1条开始,取n条。
select * from tablename limit 2,4
即取出第3条至第6条,4条记录

如果你只有一条记录 但你要查询10条记录
这样就会重复取数了
如果楼主满意 请采纳
追问
如何能不重复呢?
追答
那就是后面的记录数比表的数据要少 表的数据至少有n+m条数据
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式