MySQL小技巧 - 从数据库读取当前数据处在总记录的进度

从数据库读取当前数据处在总记录的进度,js代码

/**
 * 获取单个sql语句
 * @param  {[str]}  s_kcrwdm        [编号]
 * @param  {[str]}  id        [唯一id]
 * @return {[str]} [sql语句]
 * @desc 该语句执行MySQL返回的数组类似 {p:56} 0-100之间,包括100
 */
function getASql(s_kcrwdm,id){
    return 'SELECT (ROUND(rowsnumber*100/(SELECT COUNT(*) as d FROM `schedule_list` WHERE `s_kcrwdm`="'+s_kcrwdm+'"))) as p FROM (SELECT `id`, @rownum := @rownum +1 AS rowsnumber'+
        '  FROM schedule_list,(SELECT@rownum :=0) r '+
        '  WHERE `s_kcrwdm`="'+s_kcrwdm+'"'+
        ' order by `date` asc,`s_jcdm` asc'+
        ') t '+
        'WHERE t.id="'+id+'"';
}

MySQL语句

//四舍五入取整 注意两个数据 s_kcrwdm和id
SELECT (ROUND(rowsnumber*100/(SELECT COUNT(*) as d FROM `schedule_list` WHERE `s_kcrwdm`="202240028230"))) as p FROM (SELECT `id`, @rownum := @rownum +1 AS rowsnumber
  FROM schedule_list,(SELECT@rownum :=0) r 
  WHERE `s_kcrwdm`="202240028230"
 order by `date` asc,`s_jcdm` asc
) t 
WHERE t.id='542'

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值