Mysql 从日期时间列中选择月份
我有一个表,其中有一个日期时间列,名为:completed\u date(2016-05-27 04:08:53)。我想选择当前月份的所有数据,但忽略时间。大概是这样的:Mysql 从日期时间列中选择月份,mysql,datetime,Mysql,Datetime,我有一个表,其中有一个日期时间列,名为:completed\u date(2016-05-27 04:08:53)。我想选择当前月份的所有数据,但忽略时间。大概是这样的: $query = mysqli_query($dbc, " select * from eob_posting where completed_date=DATE(NOW())"); 如何删除时间,以便子句中的只考虑日期?要获取当前月份,应使用年()和月(): 比其他答案还要短:-) 请注意,日期时间基本上也是“2
$query = mysqli_query($dbc, " select * from eob_posting where
completed_date=DATE(NOW())");
如何删除时间,以便子句中的只考虑日期?要获取当前月份,应使用
年()
和月()
:
比其他答案还要短:-) 请注意,日期时间基本上也是“2016-01-01 12:34:56”形式的字符串,因此您可以:
> SELECT LEFT(NOW(), 7) as YearAndMonth;
YearAndMonth
------------
2016-08
因此,您的查询很容易表示为:
SELECT * FROM eob_posting
WHERE LEFT(completed_date, 7) = LEFT(NOW(), 7)
狩猎快乐 他的问题让人困惑。这将返回仅在今天完成的行,而不是整个当月的行。@Mureinik好的,我将其更改为获取月份。如果您想要月份,为什么要使用
DATE()
?
> SELECT LEFT(NOW(), 7) as YearAndMonth;
YearAndMonth
------------
2016-08
SELECT * FROM eob_posting
WHERE LEFT(completed_date, 7) = LEFT(NOW(), 7)