比较日期和日期时间
Compare date and datetime
我想比较 sql 的日期时间和今天的日期。
sql 中的日期时间例如是 2015/05/09 12:00:00,当前日期是 2015/05/09。如果它们相等,我想比较这些东西,但是一整天所以时间是个问题。我有以下查询。
$q1="SELECT reservations.reservation_id, reservations.room_id, room.room_rate, reservations.arrival_date, reservations.departure_date,
meals.meal_rate, room.room_rate, roomtype.max_persons,
CONCAT(clients.first_name,' ',clients.last_name)as name
FROM reservations, clients, meals, room, roomtype
WHERE reservations.room_id=room.room_id AND reservations.client_id=clients.client_id AND room.roomtype_id=roomtype.roomtype_id
AND reservations.meals=meals.meal_id AND reservations.arrival_date=CURDATE()
GROUP BY reservation_id
";
reservations.arrival_date=CURDATE() 这只在 12:00:00 点是相等的。我希望整个 day.Actually 都相等 我想比较这两个日期在没有时间的情况下是否相等,但我的数据库必须是带时间的日期时间...
有人有想法吗?
提前谢谢
您应该学会使用标准 join
语法。简单规则:从不 在 from
子句中使用逗号。
您问题的答案是 date()
函数(或类似函数):
where date(reservations.arrival_date) = CURDATE()
或不等式:
where (reservations.arrival_date >= CURDATE() and
reservations.arrival_date < date_add(CURDATE(), interval 1 day)
)
第二个实际上是首选,因为它可以利用 reservations(arrival_date)
上的索引。
我想比较 sql 的日期时间和今天的日期。 sql 中的日期时间例如是 2015/05/09 12:00:00,当前日期是 2015/05/09。如果它们相等,我想比较这些东西,但是一整天所以时间是个问题。我有以下查询。
$q1="SELECT reservations.reservation_id, reservations.room_id, room.room_rate, reservations.arrival_date, reservations.departure_date,
meals.meal_rate, room.room_rate, roomtype.max_persons,
CONCAT(clients.first_name,' ',clients.last_name)as name
FROM reservations, clients, meals, room, roomtype
WHERE reservations.room_id=room.room_id AND reservations.client_id=clients.client_id AND room.roomtype_id=roomtype.roomtype_id
AND reservations.meals=meals.meal_id AND reservations.arrival_date=CURDATE()
GROUP BY reservation_id
";
reservations.arrival_date=CURDATE() 这只在 12:00:00 点是相等的。我希望整个 day.Actually 都相等 我想比较这两个日期在没有时间的情况下是否相等,但我的数据库必须是带时间的日期时间... 有人有想法吗? 提前谢谢
您应该学会使用标准 join
语法。简单规则:从不 在 from
子句中使用逗号。
您问题的答案是 date()
函数(或类似函数):
where date(reservations.arrival_date) = CURDATE()
或不等式:
where (reservations.arrival_date >= CURDATE() and
reservations.arrival_date < date_add(CURDATE(), interval 1 day)
)
第二个实际上是首选,因为它可以利用 reservations(arrival_date)
上的索引。