[英]Date comparison query php sql
我正在努力比較2個查詢中的SQL查詢中的日期-我已經在strtotime
/ date / unixtime等中四處查看,但是不能完全解決。
$currentday
是日期字符串,格式為2013-12-29
Enddate是“日期”類型的sql字符串-格式為0000-00-00
(有時帶有日期,其他時候為null
)
這是代碼:
///Find all regular payments ordered by amount descending
$check = mysql_query("
SELECT *
FROM
regular
WHERE
enddate >= ".$currentday." AND
userid = ".$varuserid."
ORDER BY amount desc
");
if($check === FALSE) {
die(mysql_error()); // TODO: better error handling
} else {
$regcheck = array(); //Assign details of valid regular payments for the user to an array
while($val=mysql_fetch_array($check)) {
//SHOULD BE LIMITED BY SQL QUERY - Don't understand why it isnt??
if (($val['enddate'] > $currentday) || (!$val['enddate'])) {
print $val['enddate'].'?'.$currentday.'<br/>';
//ERROR - NOT SURE WHY THIS SHOWS UP FROM THE SQL QUERY?
} else {
print 'err'.$val['enddate'].'?'.$currentday.'<br/>';
}
}
}
您必須引用字符串:
WHERE enddate >= '".$currentday."' AND ...
不清楚最終目標是什么,但是已經調整了MySQL以適應0000-00-00
和NULL
日期。
$check = mysql_query("
SELECT *
FROM
regular
WHERE
(enddate >= '" . $currentday . "' AND
enddate IS NOT NULL AND
enddate != '0000-00-00') AND
userid = ".$varuserid."
ORDER BY amount desc
");
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.