MySQL数据库中year()函数是求某个特定日期中的年份,代码如下:
select '2015-08-11' as date,year('2015-08-11') as year
确定一个日期是一年中的第几个季度,可以用QUARTER()函数实现,代码如下:
SELECT '2015-08-11' AS DATE,QUARTER('2015-08-11') AS QUARTER
返回一个日期是一年中的月份,利用month()函数实现,代码如下:
SELECT '2015-08-11' AS DATE,MONTH('2015-08-11') AS MONTH
获取一个确定日期是一个月份中的多少号,可以用day()函数求得,具体实现代码如下:
SELECT '2015-08-11' AS DATE,DAY('2015-08-11') AS DAY
有时日期中带有时间,而如何获取小时数,这可以利用自带的函数hour()实现,代码如下:
SELECT '2015-08-11 12:20:45' AS DATE,HOUR('2015-08-11 12:20:45') AS HOUR
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小时前的,以此类推欢迎分享,转载请注明来源:内存溢出
评论列表(0条)