【发布时间】:2016-12-10 08:58:18
【问题描述】:
我正在尝试从表中获取特定月份和年份的一些记录,但我只有完整的日期字段。
在上图中,我想从日期中选择数据,但仅限于 (2015-09)
例如:
SELECT * FROM attendance WHERE date = (year-month)
【问题讨论】:
标签: php mysql sql mysqli mysql-workbench
我正在尝试从表中获取特定月份和年份的一些记录,但我只有完整的日期字段。
在上图中,我想从日期中选择数据,但仅限于 (2015-09)
例如:
SELECT * FROM attendance WHERE date = (year-month)
【问题讨论】:
标签: php mysql sql mysqli mysql-workbench
你可以使用year和month函数:
SELECT * FROM attendance WHERE year(`date`) = '2015' and month(`date`) = '9'
【讨论】:
date 字段上的索引。
您可以设置从该月的月初到月底的日期范围。
SELECT *
FROM attendance
WHERE `date` BETWEEN '2015-09-01' AND '2015-09-30'
【讨论】:
date上的索引。
尝试使用DATE_FORMAT。
您的查询是:
SELECT * FROM attendance WHERE DATE_FORMAT(date,'%Y-%m') = '2016-05'
【讨论】:
(year-month),例如SELECT * FROM attendance WHERE DATE_FORMAT(date,'%Y-%m')='2015-09'。否则看起来很混乱。