从日期字段中选择特定数据
Posted
技术标签:
【中文标题】从日期字段中选择特定数据【英文标题】:Select specific data from date field 【发布时间】:2016-12-10 08:58:18 【问题描述】:我正在尝试从表中获取特定月份和年份的一些记录,但我只有完整的日期字段。
在上图中,我想从日期中选择数据,但仅限于 (2015-09)
例如:
SELECT * FROM attendance WHERE date = (year-month)
【问题讨论】:
【参考方案1】:你可以使用year
和month
函数:
SELECT * FROM attendance WHERE year(`date`) = '2015' and month(`date`) = '9'
【讨论】:
这个不错。但一个问题是,如果你想使用索引你不能:( @1000111 太好了!!!你总能抓住一些建设性的观点。使用索引,也许凯尔的答案更好。 :-D 是的。 @KaeL 的回答可以利用date
字段上的索引。【参考方案2】:
您可以设置从该月的月初到月底的日期范围。
SELECT *
FROM attendance
WHERE `date` BETWEEN '2015-09-01' AND '2015-09-30'
【讨论】:
这个可以使用date
上的索引。【参考方案3】:
尝试使用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'
。否则看起来很混乱。以上是关于从日期字段中选择特定数据的主要内容,如果未能解决你的问题,请参考以下文章
当用户从日期选择器中选择日期时,如何在下拉列表中获取特定的星期几?