扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
如果数据库是datetime类型,那么可以:
成都创新互联主要从事成都网站制作、网站设计、外贸网站建设、网页设计、企业做网站、公司建网站等业务。立足成都服务黄岩,十载网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792
DateFormate df = new SimpleDateFormate("yyyy-MM-dd HH:mm:ss");
Date d = df.parse(str);
其实数据库存时间的话,完全可以使用字符串,这样比较方便,而且会避免转化带来的错误,在页面上展示的时候直接使用substring来截取你想要的东西。
SQL没办法得到当前的时间戳 除非你是用服务器脚本语言 追问: SELECT count(*) FROM `ip11` WHERE DATE_FORMAT(NOW(),'%H')-DATE_FORMAT(time_tip,'%H')=1 and TO_DAYS( NOW( ) ) - TO_DAYS(time_tip)=1 可以的我写的这个就可以的,关键是我现在不知道怎么写循环的。我上面的这个句子可以实现查询每个小时内的记录条数,我不想写24个,用循环怎么写呢。 回答: SQL循环我不知道,只做过服务器脚本语言的 PS:DATE_FORMAT(NOW(),'%H')得到的是当前小时 比如11点20,用DATE_FORMAT(NOW(),'%H')得到的值是11,而不是你想要的12 追问: DATE_FORMAT(NOW(),'%H')-DATE_FORMAT(time_tip,'%H')=0 比如现在14:40,上面这句话可以得到14:00-14:40之间的记录数。 我现在就是不会写php的循环 回答: ?php for($i=0;$i=11;$i++){ $sql = "SELECT count(*) FROM `ip11` WHERE DATE_FORMAT(NOW(),'%H')-DATE_FORMAT(time_tip,'%H')=".$i." and TO_DAYS( NOW( ) ) - TO_DAYS(time_tip)=1"; echo $sql; } ? echo $sql;只是测试 i=0就是当前小时的,i=1就是1小时前的,以此类推
select substr(date_time,1,10),count(*) from A group by substr(date_time,1,10)
date_time的时间格式是YYYYMMDDHHMMSS
希望对你有帮助
Mysql中经常用来存储日期的数据类型有三种:Date、Datetime、Timestamp。
Date数据类型:用来存储没有时间的日期。Mysql获取和显示这个类型的格式为“YYYY-MM-DD”。支持的时间范围为“1000-00-00”到“9999-12-31”。
Datetime类型:存储既有日期又有时间的数据。存储和显示的格式为 “YYYY-MM-DD HH:MM:SS”。支持的时间范围是“1000-00-00 00:00:00”到“9999-12-31 23:59:59”。
Timestamp类型:也是存储既有日期又有时间的数据。存储和显示的格式跟Datetime一样。支持的时间范围是“1970-01-01 00:00:01”到“2038-01-19 03:14:07”。
所有不符合上面所述格式的数据都会被转换为相应类型的0值。(0000-00-00或者0000-00-00 00:00:00)
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流