mysql日期问题 如何查询某年某月的记录?如2007年8月的所有评论数?查询速度要快,因为表比较大,而且还有其他表要连,所以最好可以少用函数。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 要非常的块就得改变你的表结构。把年月日分别存放到一个字段里用INT类型。然后再建立一个聚集索引。 慢的可以用DATE_FORMAT(startDate,'%Y-%m') 改结构,在把日期存成int型,建立索引,直接查询。 表有多大,而且你连表的个数是多少。基本上时间类型也可以按照INT类型来对待。你的SQL 语句用EXPLAIN 分析一下,然后该加索引的加索引,做其他优化的做优化。 表现在数据不多,但以后用起来最起码是几十万的,大概连四个表吧。除了加索引,还能怎么优化?而且如何查询某年某月的记录?只能用DATE_FORMAT? select DATE_FORMAT(now(),'%Y-%m');select concat(year(now()),'-',month(now())); 或者用 theDate >= @mnBgnDate and theDate < @mnEndDate MYSQL经常假死,求分析原因 前台程序的速度需要后台先执行几次后才快出来 MySQL 存储过程异常获取错误码及错误信息 这样的两表联查能否实现 也问个乱码的问题 连接不了mysql,怎么回事??? EMS SQL Studio 2006 for MySQL 注册码 局域网内主机不关闭防火墙,数据库可以被其它电脑访问吗 asp.net 如果连接mysql集群? 数据库记录丢失是怎么回事? mysql 求两个日期相隔多少个月? 请教一个sql查询语句
把年月日分别存放到一个字段里用INT类型。然后再建立一个聚集索引。
基本上时间类型也可以按照INT类型来对待。
你的SQL 语句用EXPLAIN 分析一下,然后该加索引的加索引,做其他优化的做优化。
select concat(year(now()),'-',month(now()));