mysql 如何获取表的按比例获取数据 (比如获取30%记录)

想达到的目的是通过计算好的比例 比如10.49%、30%、0.23%这种比例

从数据库查询 此比例的数据记录


mysql
php
2023-04-28 13:34:52
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
安静的狗粮

先计算总条数,再乘以比例,得出条数,最后去limit

select round(count(1)*比例) as cnt from tb;
select * from tb limit cnt;

cnt要计算好替换到limit后面才可以。
例如:

select round(count(1)*0.1049) as cnt from tb; //假设结果190172
select * from tb limit 190172;

不知是否有理解错
再来个纯SQL版的,只要传入比例值即可

select *,@i:=@i+1 as idx from tb,(select @i:=0)t where @i<(select round(count(1)*比例值) from tb);
分享
微博
QQ
微信
回复
2023-04-28 14:28:51
相关问题
数据日志详情怎么获取好呢?
767浏览 • 1回复 待解决
Stage模型如何获取context?
964浏览 • 1回复 待解决
关于鸿蒙系统gnss原始数据获取?
1149浏览 • 1回复 待解决
Scrapy 获取不到拉勾网指定xpath数据
1829浏览 • 0回复 待解决
如何获取系统屏幕固定。
917浏览 • 0回复 待解决
PolarDB binlog备份如何获取?
489浏览 • 1回复 待解决
OpenHarmony startAbility 如何获取参数
3659浏览 • 0回复 待解决
mysql 千万级中快速插入和删除记录
647浏览 • 1回复 待解决
关于如何获取时钟id问题
3452浏览 • 1回复 待解决
SQL插入一个数据时,如何获取ID?
593浏览 • 2回复 待解决
如何获取HUAWEI DevEco Device Tool?
2271浏览 • 1回复 已解决
鸿蒙中如何获取context对象
5496浏览 • 1回复 待解决
如何判断音频焦点获取和丢失?
3094浏览 • 1回复 待解决
鸿蒙如何获取Element图片宽高
4776浏览 • 1回复 待解决
请问如何获取到鸿蒙根布局
3835浏览 • 1回复 待解决
如果写一个多级获取数据问题?
1161浏览 • 1回复 待解决
wifinetworkid怎么获取
227浏览 • 1回复 待解决
mysql 历史数据如何迁移到 bak
2123浏览 • 1回复 待解决