php mysql 出现 间隔 记录 遗漏

做数据遗漏用的比如字段haoma里面是号码的数字有123456···等等我要算出有多少期没出这个号码了,比如2号就是第一步:获取数据库最新一条数据的ID比如是id=135... 做数据遗漏用的
比如字段 haoma 里面是号码的数字 有1 2 3 4 5 6 ···等等
我要算出 有多少期没出这个号码了,比如2号

就是
第一步:获取 数据库最新一条数据的ID
比如是id=1355

然后 在写一条SQL 查找 号码是2的数据 但是 ID是<= 最新的那条ID
如 1350

这样自后 我用 最新的那个ID减去 后来获取 的ID

这样就遗漏5期了。也就是说 有5条记录没出现了。
---重点---

但是问题出现了。
我要在一段时间内,如:一星期 找出 这个最大遗漏 也就是说 一星期内 最大未出现的记录是多少。
请问怎么做?
展开
 我来答
dispose
推荐于2016-06-25 · TA获得超过642个赞
知道小有建树答主
回答量:458
采纳率:0%
帮助的人:495万
展开全部
首先,你用新id减去旧id做法有缺陷。
如果id不连续,你得到结果就是错误的。
建议改为一下方法:

第一步:
select id from tables where haoma like '%2%' order by id desc limit 1;

注:如果号码字段包含多位数的,最好存储时候用"," 隔开, 且前后都加上,方便查询。如:,2,23,12,
select id from tables where haoma like '%,23,%' order by id desc limit 1;

第二步: select count(*) from tables where id > "第一步取得的id"
这样就得到几期没开。

如果要查询一段时间内,那就要有个时间戳字段,sql改为如下格式

第一步改为:
select id from tables where timestamp > "替换为某个时间戳" and haoma like '%2%' order by id desc limit 1;

第二步不变

祝你成功!
6fone
2015-08-12 · TA获得超过804个赞
知道小有建树答主
回答量:631
采纳率:33%
帮助的人:541万
展开全部
题主的目标是想找一段时间内出现次数最多的号码吗?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式