mysql查询时间提前五天_mysql选择月份查询该月有付款的数据(间隔x月并提前5天付款)...

ktime  开始时间串

dtime 到期时间串

jmonth  付费间隔月份数  可选(1,3,6,12)

需要   按月查询数据

比如说 ktime=1228406400(2008-12-5)     dtime=1259856000(2009-12-4)      jmonth=3

从2008-12-5开始,间隔3个月需要付费 直到2009-12-5

既第一次是2008-12-5号付费

第二次是2009-2-28号付费(提前5天)2009-3-5

第三次是2009-5-31号付费(提前5天)2009-6-5

第四次是2009-8-31号付费(提前5天)2009-9-5

现在我要查询2009年2月的要付费的数据就可以把上面给查出来,

查2009年3月的要付费的就无上面的例子

查2009年5月的也可以查出来。

--------------------------------------------

$stime="2009-05";   当前月,选择的查询月份。

$stimes="200905";

$mintime=1241107200(2009-05-01 00:00:00);

$maxtime=1243785600(2009-06-01 00:00:00);  月份+1

$sql="select * from t_list where del=0 and ( (ktime>={$mintime} and ktime$maxtime and PERIOD_DIFF(".$stimes.",DATE_FORMAT(FROM_UNIXTIME(ktime-5*24*60*60),\"%Y%m\")) mod jmonth=0) )  order by ktime desc";

---------------------

(ktime>={$mintime} and ktime

ktime$maxtime  除开开始时间为当前月的和到期时间为本月的

PERIOD_DIFF(".$stimes.",DATE_FORMAT(FROM_UNIXTIME(ktime-5*24*60*60),\"%Y%m\"))    当前月与开始时间之间的间隔月份数

mod jmonth=0  当前月与开始时间之间的间隔月份数 与  付费的间隔月份数   取余得0的说明当前月需要付费。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值