php按当前年份、季度、当月,查询mysql数据库并输出数组

php按当前年份、季度、当月,查询mysql数据库并输出数组,第1张

PHP查询到的数据存放到数组里面,一般使用$arr[]=$row的方式实现,$row是mysql_fetch_array获得的一行数据,本身是一个数组,执行上面的语句之后,这一行会添加存放在额为数组$arr的最后。典型的例子代码是这样的:mysql_connect('127.0.0.1', 'root', '123456')$sql='select * from test.tab'if ($res=mysql_query($sql)){while($row=mysql_fetch_array($res)) $result[]=$row mysql_free_resule($res)}else echo "执行SQL语句:$sql\n错误:".mysql_error()echo '查询结果在下面的额为数组里面:'print_r($result)echo ''

你要搞清楚 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

那么你的数据表中需要有个字段是数据添加的时间,而且最好是时间戳格式,也就是10位的数值。然后查询的时候可以用时间间隔的where条件来查询,例如要查询2015年第22周,那么开始时间就是2015年1月1日的时间戳+21*604800,因为一周是604800秒,所以用21乘以604800,这样得到开始时间,那结束时间就是开始时间再加604800秒,查询的时候语句就是select * from 数据表 where 时间戳字段>开始时间 and 时间戳字段<结束时间这样就可以查到了。


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

原文地址:https://54852.com/zaji/8611530.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存