mysql 月份查詢該月有付款的數(shù)據(jù)
更新時(shí)間:2010年04月09日 17:24:33 作者:
mysql選擇月份查詢該月有付款的數(shù)據(jù)(間隔x月并提前5天付款)
ktime 開始時(shí)間串
dtime 到期時(shí)間串
jmonth 付費(fèi)間隔月份數(shù) 可選(1,3,6,12)
需要 按月查詢數(shù)據(jù)
比如說 ktime=1228406400(2008-12-5) dtime=1259856000(2009-12-4) jmonth=3
從2008-12-5開始,間隔3個月需要付費(fèi) 直到2009-12-5
既第一次是2008-12-5號付費(fèi)
第二次是2009-2-28號付費(fèi)(提前5天)2009-3-5
第三次是2009-5-31號付費(fèi)(提前5天)2009-6-5
第四次是2009-8-31號付費(fèi)(提前5天)2009-9-5
現(xiàn)在我要查詢2009年2月的要付費(fèi)的數(shù)據(jù)就可以把上面給查出來,
查2009年3月的要付費(fèi)的就無上面的例子
查2009年5月的也可以查出來。
$stime="2009-05"; 當(dāng)前月,選擇的查詢月份。
$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) or (ktime<$mintime and dtime-5*24*60*60>$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<$maxtime) 開始時(shí)間為當(dāng)前月的
ktime<$mintime and dtime-5*24*60*60>$maxtime 除開開始時(shí)間為當(dāng)前月的和到期時(shí)間為本月的
PERIOD_DIFF(".$stimes.",DATE_FORMAT(FROM_UNIXTIME(ktime-5*24*60*60),\"%Y%m\")) 當(dāng)前月與開始時(shí)間之間的間隔月份數(shù)
mod jmonth=0 當(dāng)前月與開始時(shí)間之間的間隔月份數(shù) 與 付費(fèi)的間隔月份數(shù) 取余得0的說明當(dāng)前月需要付費(fèi)。
dtime 到期時(shí)間串
jmonth 付費(fèi)間隔月份數(shù) 可選(1,3,6,12)
需要 按月查詢數(shù)據(jù)
比如說 ktime=1228406400(2008-12-5) dtime=1259856000(2009-12-4) jmonth=3
從2008-12-5開始,間隔3個月需要付費(fèi) 直到2009-12-5
既第一次是2008-12-5號付費(fèi)
第二次是2009-2-28號付費(fèi)(提前5天)2009-3-5
第三次是2009-5-31號付費(fèi)(提前5天)2009-6-5
第四次是2009-8-31號付費(fèi)(提前5天)2009-9-5
現(xiàn)在我要查詢2009年2月的要付費(fèi)的數(shù)據(jù)就可以把上面給查出來,
查2009年3月的要付費(fèi)的就無上面的例子
查2009年5月的也可以查出來。
復(fù)制代碼 代碼如下:
$stime="2009-05"; 當(dāng)前月,選擇的查詢月份。
$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) or (ktime<$mintime and dtime-5*24*60*60>$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<$maxtime) 開始時(shí)間為當(dāng)前月的
ktime<$mintime and dtime-5*24*60*60>$maxtime 除開開始時(shí)間為當(dāng)前月的和到期時(shí)間為本月的
PERIOD_DIFF(".$stimes.",DATE_FORMAT(FROM_UNIXTIME(ktime-5*24*60*60),\"%Y%m\")) 當(dāng)前月與開始時(shí)間之間的間隔月份數(shù)
mod jmonth=0 當(dāng)前月與開始時(shí)間之間的間隔月份數(shù) 與 付費(fèi)的間隔月份數(shù) 取余得0的說明當(dāng)前月需要付費(fèi)。
相關(guān)文章
MySQL5綠色版windows下安裝總結(jié)(推薦)
這篇文章主要介紹了MySQL5綠色版windows下安裝總結(jié),需要的朋友可以參考下2017-03-03
mysql存儲過程游標(biāo)之loop循環(huán)解讀
這篇文章主要介紹了mysql存儲過程游標(biāo)之loop循環(huán)解讀,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-07-07
Linux環(huán)境下安裝mysql5.7.36數(shù)據(jù)庫教程
大家好,本篇文章主要講的是Linux環(huán)境下安裝mysql5.7.36數(shù)據(jù)庫教程,感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽2021-12-12
MySql使用skip-name-resolve解決外網(wǎng)鏈接客戶端過慢問題
在騰訊云上面搭建的mysql使用開發(fā)的電腦上navicat進(jìn)行訪問時(shí)總是特別的慢,原來是Mysql會對請求的地址進(jìn)行域名解析,開發(fā)的電腦并沒有域名,所以會導(dǎo)致特別的慢,下面通過本文給大家分享MySql使用skip-name-resolve解決外網(wǎng)鏈接客戶端過慢問題2017-07-07
SQL Server索引設(shè)計(jì)基礎(chǔ)知識詳解使用
為了使索引的使用效率更高,在創(chuàng)建索引時(shí),必須考慮在哪些字段上創(chuàng)建索引和創(chuàng)建什么類型的索引。索引設(shè)計(jì)不合理或者缺少索引都會對數(shù)據(jù)庫和應(yīng)用程序的性能造成障礙。高效的索引對于獲得良好的性能非常重要。設(shè)計(jì)索引時(shí),應(yīng)該考慮相應(yīng)準(zhǔn)則2023-04-04

