我有这个mysql查询,但当有这种格式的当前日期的行时,它会重新调整为零'2011-04-07 19:15:11'
$query_stat_today =
"SELECT C.id
, C.j_user_id
, L.j_logged_date
, COUNT(L.site_id) as total
FROM
jt_site C
, jt_access_log L
WHERE
C.id = L.site_id
AND C.j_user_id = ".check_db_query_id($user_id)."
AND DATE(L.j_logged_date) = **CURDATE()**";
这会返回零
答案 0 :(得分:0)
这是有道理的,因为你不是在同一天匹配项目,而是在同一天匹配项目 如果你改变
AND DATE(L.j_logged_date) = CURDATE()
到
AND DATE(L.j_logged_date)
BETWEEN CURDATE() AND DATE_ADD(CURDATE(), INTERVAL 1 DAY)
如果记录的日期是当天的任何时间它将匹配。
答案 1 :(得分:0)
CURDATE()
不会以该格式返回日期。它仅返回日期值,即“2008-06-13”。此外,您正在使用DATE()
函数从L.j_logged_date
中提取日期值。你不应该有任何问题。你的问题出在其他地方。