mysql 怎么查询now() 要显示年份 和季度数

mysql 怎么查询now() 要显示年份 和季度数,第1张

您好,一、年度查询

查询 本年度的数据

SELECT *

FROM blog_article

WHERE year( FROM_UNIXTIME( BlogCreateTime ) ) = year( curdate( ))

二、查询季度数据

查询数据附带季度数

SELECT ArticleId, quarter( FROM_UNIXTIME( `BlogCreateTime` ) )

FROM `blog_article`

其他的同前面部分:查询 本季度的数据

SELECT *

FROM blog_article

WHERE quarter( FROM_UNIXTIME( BlogCreateTime ) ) = quarter( curdate( ))

三、查询月度数据

本月统计(MySQL)

select * from booking where month(booking_time) =

month(curdate()) and year(booking_time) = year(curdate())

本周统计(MySQL)

select * from spf_booking where month(booking_time) =

month(curdate()) and week(booking_time) = week(curdate())

四、时间段

N天内记录

WHERE TO_DAYS(NOW()) - TO_DAYS(时间字段) <= N

当天的记录

where date(时间字段)=date(now())

where to_days(时间字段) = to_days(now())

查询一周:

select * from table where DATE_SUB(CURDATE(), INTERVAL 7 DAY) <= date(column_time)

查询一个月:

select * from table where DATE_SUB(CURDATE(), INTERVAL INTERVAL 1 MONTH) <= date(column_time)

查询'06-03'到'07-08'这个时间段内所有过生日的会员:

Select * From user Where

DATE_FORMAT(birthday,'%m-%d') >= '06-03' and DATE_FORMAT(birthday,'%m-%d')

<= '07-08'

统计一季度数据,表时间字段为:savetime

group by concat(date_format(savetime, '%Y '),FLOOR((date_format(savetime, '%m ')+2)/3))

select YEAR(savetime)*10+((MONTH(savetime)-1) DIV 3) +1,count(*)

from yourTable

group by YEAR(savetime)*10+((MONTH(savetime)-1) DIV 3) +1

五、分组查询

1、年度分组

2、月度分组

3、先按年度分组,再按月度分组

4、按年月分组

SELECT count(ArticleId), date_format(FROM_UNIXTIME( `BlogCreateTime`),'%y%m') sdate FROM `blog_article` group by sdate

结果:

count( ArticleId ) sdate

17 0901

11 0902

5 0903

6 0904

2 0905

1 0907

12 0908

6 0909

11 0910

3 0911

MYSQL,datetime类型长度填8位。

日期型(DATETIME)数据是表示日期数据,用字母D表示。日期的默认格式是{mm/dd/yyyy},其中mm表示月分,dd表示日期,yyyy表示年度,固定长度为8位。日期范围为介于 100 到 9999 年的日期或时间数值。

扩展资料:

MYSQL其他数据类型:

1、BINARY:每个字符占一个字节,任何类型的数据都可存储在这种类型的字段中。不需数据转换。数据输入二进制字段的方式决定了它的输出方式。

2、BIT:1 个字节0 和 1 ,以及只包含这两个数值之一的字段。

3、TINYINT:1个字节,介于0到255之间的整型数。

4、MONEY:8个字节,介于–922,337,203,685,477.5808到922,337,203,685,477.5807之间的符号整数。

5、UNIQUEIDENTIFIER:128个位,用于远程过程调用的唯一识别数字。

6、REAL:4个字节单精度浮点数,负数范围是从–3.402823E38到–1.401298E-45,正数从1.401298E-45到3.402823E38,和0。

7、SMALLINT:2个字节,介于–32,768到32,767的短整型数。

8、INTEGER:4个字节,介于–2,147,483,648到2,147,483,647的长整型数。

9、DECIMAL:17个字节,容纳从1028-1到-1028-1的值的精确的数字数据类型。你可以定义精度(1-28)和符号(0-定义精度)。缺省精度和符号分别是18和0。

10、TEXT每一字符两字节,从零到最大2.14千兆字节。

11、IMAGE视实际需要而定,从零到最大2.14千兆字节。用于OLE对象。

12、CHARACTER每一字符两字节,长度从0到255个字符。

可以加个时间维度表,以时间维度表为主表!(id,month)id 是和你的表左连接,month是1到12月,一楼说的几个方法!应该不好实现的吧?不用写存储过程那么复杂!举个例子

select a.rq,

b.xssr

from date_table a left jion table1 b

on a.id=b.id


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6106646.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-15
下一篇 2023-03-15

发表评论

登录后才能评论

评论列表(0条)

保存