小编Sum*_*x0r的帖子

根据月份或年份拆分日期数组

我有一个数组返回一个请求的日期系列,我希望根据变量分为月或年.

当前数组的示例:

array(4) {

[0]=> string(10) "2012-02-01"

[1]=> string(10) "2012-02-02"

[2]=> string(10) "2011-02-03"

[3]=> string(10) "2011-03-04"

[4]=> string(10) "2011-04-05"

}
Run Code Online (Sandbox Code Playgroud)

为了在"月"或"年"视图中生成谷歌图表,我需要将此数组分开,并根据将在变量中的用户偏好将"年"或"月"组合在一起.

如果在"年视图"中我需要返回的示例

array(2) {

 [0]=> Array(2) {

       [0]=> string(10) "2012-02-01"

       [1]=> string(10) "2012-02-02"

}

 [1]=> Array(3) {

       [0]=> string(10) "2011-02-03"

       [1]=> string(10) "2011-03-14"

       [2]=> string(10) "2011-04-18"

} 

}
Run Code Online (Sandbox Code Playgroud)

不是100%肯定,如果这是一个声音数组,但我需要能够为每个数组日期做一个"foreach"语句,所以我可以添加所有的值(我需要的是函数的日期去获取并且返回一个总值和年份,因为它们被分组,所以它们都是相同的,我将在foreach语句中爆炸最后一个数组的年份.

这是预期的结果,但在"月"视图模式下

array(3) {

 [0]=> Array(3) {

       [0]=> string(10) "2012-02-01"

       [1]=> string(10) "2012-02-02"

       [2]=> string(10) "2011-02-03"

}

 [1]=> Array(1) {



       [1]=> string(10) "2011-03-14"

} 

 [2]=> Array(1) {

       [1]=> string(10) "2011-04-18"

} 

} …
Run Code Online (Sandbox Code Playgroud)

php arrays foreach

6
推荐指数
1
解决办法
2857
查看次数

非常慢的查询,任何其他方式来格式化这个更好的性能?

我有这个查询(我没写),对于一个客户端工作正常,直到表中有超过几千行,现在只需要4200行就需要40秒+.

关于如何优化和获得相同结果的任何建议?

我已经尝试了一些其他方法,但没有得到这个较慢的查询返回的正确结果...

SELECT COUNT(*) AS num
  FROM `fl_events`
  WHERE id IN(
    SELECT DISTINCT (e2.id)
      FROM `fl_events` AS e1, fl_events AS e2
      WHERE e1.startdate >= now() AND e1.startdate = e2.startdate
  )
  ORDER BY `startdate`
Run Code Online (Sandbox Code Playgroud)

任何帮助都会受到极大的关注!

mysql sql

3
推荐指数
1
解决办法
71
查看次数

标签 统计

arrays ×1

foreach ×1

mysql ×1

php ×1

sql ×1