好吧,這個人讓我難以置信,不確定它是否可能。我有一個開始和結束日期的數據庫。例如開始日期2002和結束日期2012,但是我想要做的是列出這兩個點之間的所有日期,例如2003,2004,2005等。在mysql中的開始日期和結束日期之間顯示日期
但是,這些日期不在數據庫中,所以我想要做的就是自動創建它們。這是可能的嗎?,我的另一個想法是創建第二個數據庫與連接和列表中的所有日期。
就在一些建議真的是什麼將是最好的方法來解決這個問題。
感謝
好吧,這個人讓我難以置信,不確定它是否可能。我有一個開始和結束日期的數據庫。例如開始日期2002和結束日期2012,但是我想要做的是列出這兩個點之間的所有日期,例如2003,2004,2005等。在mysql中的開始日期和結束日期之間顯示日期
但是,這些日期不在數據庫中,所以我想要做的就是自動創建它們。這是可能的嗎?,我的另一個想法是創建第二個數據庫與連接和列表中的所有日期。
就在一些建議真的是什麼將是最好的方法來解決這個問題。
感謝
這樣的事情應該用PHP做之間使用。
使用PHP提供的許多日期函數中的一些。 您可以使用mktime()
創建時間戳,然後使用strtotime()
進行循環。
$start = mktime(0, 0, 0, 1, 1, 2002);
$end = mktime(0, 0, 0, 1, 1, 2012);
$currentDate = $start;
while($currentDate < $end) {
echo date("Y", $currentDate) . "<br />";
$currentDate = strtotime("+1 year", $currentDate);
}
沒有測試過它,但應該工作。
您的SQL看起來像
$query = "SELECT starttime st ,endtime et FROM your_table WHERE id = your_user_id_variable ";
$row = mysql_fetch_array($result) or die(mysql_error());
,然後使用這個PHP代碼
for($i=1 , $i<$row['et'],$i++){
echo $row['st']+$i.", " ;
}
那麼它會回聲2003,2004,.....,2011
爲什麼不在你的代碼中做日期邏輯? – Perception