2017-06-06 79 views
1

我有一年獲得連續3年在查詢

我這裏在2016年11月11日我的數據庫一年的問題越來越 - 2015年11月13日 - 2014年11月13日 問題是我想當年剛扣除當年 因此,如果當前年份是2017年我想2016,2015,2014,和明年 2018年將得到的是2017,2016,2015

$selectmemberpaid = mysql_query("SELECT 

memberid,StartDate,EndDate,tblpayments.activityname,amount_paid FROM 

tblattend_activity LEFT JOIN tblpayments ON tblattend_activity.memberid = 

.profile_id WHERE memberid='201400001'"); 

這是我的查詢..

這是m Ÿwhile循環

while ($rows = mysql_fetch_assoc($selectmemberpaid)) { 

    # code... 
    $dateTimestamp = strtotime($rows['StartDate']); 

    $year = date("Y", $dateTimestamp); 


    } 
+2

哪裏是你的代碼的企圖? –

+0

[請閱讀如何提出一個好問題](https://stackoverflow.com/help/how-to-ask) –

+0

向我們顯示您的查詢,如果可能的話,更多關於您的表格,以便其他人可以理解並給予你正確的答案。 –

回答

1

你可以做這樣的事情得到了一年的日期字符串:

$dateTimestamp = strtotime('2015-12-12'); 
$year = date("Y", $dateTimestamp); 
echo $year; 

一旦你得到它,你可以增加或減少,以獲得一個/下一個年度(後將該值轉換爲整數)。

+0

如何判斷如果數據庫用戶有2016,2015年? –

0

我不知道我知道你要問什麼,但:Picture of DB

查詢!

 $rest = substr(date('d-m-Y'), 6);  
     $rep = $idz->query("SELECT * FROM stack1 where SUBSTR(date_depart, 6) < $rest 
     order by SUBSTR(date_depart,6) desc limit 3"); 
     while ($row = $rep->fetch()) 
     { 
     echo $row['date_depart']; 
     //echo "<br>"; 
     } 
     $rep->closeCursor(); 

結果

enter image description here

+0

我的問題是,如果用戶在2016年支付,2015年它會回聲良好,如果用戶只支付2015年不2016年,它會回聲不好。因此如果今天是2017年,該計劃將搜索連續的2年,2016年,2015年。如果今天是2018年,則計劃搜索2017,2016 –