[转]mysql查询今天,昨天,近7天,近30天,本月,上一月数据方法 01 话说有一文章表article,存储文章的添加文章的时间是add_time字段,该字段为 int (5)类型的,现需要查询今天添加的文章总数并且按照时间从大到小排序,则查询语句如下: 02 ? 03 1??? select * f
[转]mysql查询今天,昨天,近7天,近30天,本月,上一月数据方法
01 |
话说有一文章表article,存储文章的添加文章的时间是add_time字段,该字段为 int (5)类型的,现需要查询今天添加的文章总数并且按照时间从大到小排序,则查询语句如下:
|
03 |
1??? select * from `article` where date_format(from_UNIXTIME(`add_time`), '%Y-%m-%d' ) = date_format(now(), '%Y-%m-%d' );
|
06 |
1??? select * from `article` where to_days(date_format(from_UNIXTIME(`add_time`), '%Y-%m-%d' )) = to_days(now());
|
07 |
假设以上表的add_time字段的存储类型是DATETIME类型或者 TIMESTAMP 类型,则查询语句也可按如下写法:
|
11 |
1??? select * from `article` where to_days(`add_time`) = to_days(now());
|
14 |
1??? select * from `article` where to_days(now()) – to_days(`add_time`)
|
17 |
1??? select * from `article` where date_sub(curdate(), INTERVAL 7 DAY ) <code class="keyword">date (`add_time`);
|
20 |
1??? select * from `article` where date_sub(curdate(), INTERVAL 30 DAY ) <code class="keyword">date (`add_time`);
|
23 |
1??? select * from `article` where date_format(`add_time`, ‘%Y%m ') = date_format(curdate() , ‘%Y%m' );
|
26 |
1??? select * from `article` where period_diff(date_format(now() , ‘%Y%m ') , date_format(`add_time`, ‘%Y%m' )) =1;
|
31 |
就像它的名字一样,它是将具体的某一个日期或时间字符串转换到某一天所对应的unix时间戳,如: |
33 |
01?? mysql> select ? to_days( '2010-11-22 14:39:51' );?????
|
35 |
03?? | to_days( '2010-11-22 14:39:51' ) |
|
Statement:The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn