2017-08-31 51 views
0

嗨,我有一种具有有一个像2017年8月21日获取当前周,月,年记录的sql

值的列请检查截图表here

Now i need to get the values of current week, current month and current year. 

请给我建议我怎么能做到这一点。

感谢

+0

Mysql或MSSQL?请发布你迄今为止尝试过的东西。查看日期函数(mssql或mysql)。 – etsa

+0

获取值是什么意思?你是按周,月,年来总结一些列,还是只列出where条件下的行? –

+0

MS SQL - https://docs.microsoft.com/en-us/sql/t-sql/functions/datepart-transact-sql – Leonidas199x

回答

2

当前周:

SELECT * 
FROM your_table 
WHERE YEARWEEK(`your_date`) = YEARWEEK(CURDATE()) 

当月

SELECT * 
FROM your_table 
WHERE YEAR(`your_date`) = YEAR(CURDATE()) 
    AND MONTH(`your_date`) = MONTH(CURDATE()) 

本年

SELECT * 
FROM your_table 
WHERE YEAR(`your_date`) = YEAR(CURDATE()) 
+0

谢谢@thomas它的作品完美。 –

0

要选择在本年度

所有记录
Select * 
FROM `table_name` 
WHERE YEAR('hit_date') = YEAR(CURDATE()); 

要在当月

Select * 
FROM `table_name` 
WHERE MONTH('hit_date') = MONTH(CURDATE()) 
AND YEAR('hit_date') = YEAR(CURDATE()); 

选择所有记录要在本周选择的所有记录

Select * 
FROM `table_name` 
WHERE YEARWEEK('hit_date') = YEARWEEK(CURDATE()); 

请注意有关YEARWEEK你可以指定你的那一周开始日取决于模式(第二参数)请看看MySQL YEARWEEK() Function

相关问题