在MySql中、怎样根据年份或者月份查询数据表中的数据?

在MySql中、怎样根据年份或者月份查询数据表中的数据?,第1张

下面以比较流行的mysql图形化管理工具Navicat为例,其他工具或者在命令行中以及编程语言中 *** 作时的执行的sql语句是一样的。

1、假设在数据库中有一个名为testtest的表格,表格内容如下图所示,表中有三条记录是9月份的

2、打开一个查询窗口,输入查询语句select * from testtest where month(date)='9',该语句表示查询testtest表格中9月份的记录

3、点击“运行”执行该sql语句,在下方可以看到已经查询到了9月份的三条记录

4、如需按年查询可输入select * from testtest where year(date)='2017',2017代表需要查询的年份。如下图所示只查询到了一条记录是2017年的

你要搞清楚 DATE_FORMAT 函数的用法,该函数是格式时间的一个函数,按照一个格式输入时间。

原型为DATE_FORMAT(日期,格式)

其中格式为:%Y 表示年份,%m月份, %d 天数,其他部分会原样输出

'%Y-%m',会按照 年-月输出: 2013-10,其中 -线原样输出

'2012-%m-%d',会按照 年-月-日输出: 2012-10-18,其中2012 和 - 部分原样输出。

你的语句可以改成

select DATE_FORMAT(来电时间,'%Y-%m') as yue, 问题类别 , count(1) as num from mytable where 问题类别='农村合作医疗' and 来电时间 >= '2012-1-1' and 来电时间 <'2013-1-1' group by DATE_FORMAT(来电时间,'%Y-%m') ,问题类别 ORDER BY 问题类别, yue

实这个问题要拆分成两个问题。

第一是 *** 作系统所采用的文件系统能支持的单个文件大小,比如:

linux 2.2-intel 32-bit (ext2文件系统) 最大支持2GB

linux 2.4+ (ext3文件系统) 支持4TB

win32 (fat32文件系统) 4GB

win32 (ntfs文件系统) 2TB

第二是存储引擎本身能支持的最大空间大小。比如

InnoDB存储引擎的表空间最大容量为64TB,不具体限制单表的大小,但受限于表空间。

MyISAM

最大表尺寸为65536TB,但是在 MySQL5.0版本之前,默认情况下,MyISAM单个表允许的最大尺寸为4GB,你可以通过 SHOW

TABLE STATUS 语句或 myisamchk -dv tbl_name 检查表的最大尺寸,如果是4G,可以通过修改

AVG_ROW_LENGTH 和 MAX_ROWS 选项的值来达到目的。MySQL5.0版本后,默认MyISAM表的限制是256TB。


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存