十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
select * from tb where start_time ='2014-6-12' 注释:where条件限定时间条件 start_time = '目标日期'
网站建设哪家好,找创新互联公司!专注于网页设计、网站建设、微信开发、小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了乌海海南免费建站欢迎大家使用!
mysql select MAKEDATE(YEAR(NOW()), 1) ;
+--------------------------+
| MAKEDATE(YEAR(NOW()), 1) |
+--------------------------+
| 2013-01-01 |
+--------------------------+
1 row in set (0.00 sec)
这个效果?
--方法一:由于MySQL目前字段的默认值不支持函数,所以以create_timedatetimedefaultnow()的形式设置默认值是不可能的。代替的方案是使用TIMESTAMP类型代替DATETIME类型。TIMESTAMP列类型自动地用当前的日期和时间标记INSERT或UPDATE的操作。如果有多个TIMESTAMP列,只有第一个自动更新。自动更新第一个TIMESTAMP列在下列任何条件下发生:1.列值没有明确地在一个INSERT或LOADDATAINFILE语句中指定。2.列值没有明确地在一个UPDATE语句中指定且另外一些的列改变值。(注意一个UPDATE设置一个列为它已经有的值,这将不引起TIMESTAMP列被更新,因为如果你设置一个列为它当前的值,MySQL为了效率而忽略更改。)3.你明确地设定TIMESTAMP列为NULL.4.除第一个以外的TIMESTAMP列也可以设置到当前的日期和时间,只要将列设为NULL,或NOW()。所以把日期类型选择成timestamp允许空就可以了CREATETABLEtest(unamevarchar(50)NOTNULL,updatetimetimestampNULLDEFAULTCURRENT_TIMESTAMPONUPDATECURRENT_TIMESTAMP)ENGINE=InnoDBDEFAULTCHARSET=utf8;如果要在navicat下操作的话,将字段设置为timestamp,然后默认值写上CURRENT_TIMESTAMP即可
使用date_format将表中datetime字段的值转换成“年月日”格式的字符串即可
语句这样写:
select * from 表名 where date_format(日期字段,'%Y-%m-%d') = ‘2012-1-1’;
记得采纳。