MySQL 如何按百分比获取数据?

阅读 92

2022-03-15

先要得到一张有自增长列的结果集了

SELECT 
  A.*,
  @row_num:=@row_num+1 AS ROW_NUM 
FROM 
  目标表 A , (SELECT @row_num:=0) B 
WHERE is_deleted = '0' AND 条件

这样得到的就是这张表多了一列自增的ROW_NUM列
在这里插入图片描述

再按你需要的比例取数据,案例是70%

SELECT *, FROM
(
SELECT 
  A.*,
  @row_num:=@row_num+1 AS ROW_NUM 
FROM 
  目标表 A , (SELECT @row_num:=0) B 
WHERE is_deleted = '0' AND 条件
) C
WHERE C.ROW_NUM<=(@row_num*0.7)

即可实现。
更多数据库获取百分比数据方法,请点击这里获取。

精彩评论(0)

0 0 举报