常规结果是PHP

时间:2016-01-22 13:40:17

标签: php

是否可以运行此代码24次,以便在不复制和粘贴代码24次的情况下查找每小时值。

<?php
  $result = mysql_query('SELECT date,SUM(value) AS value_sum FROM me Where WEEKDAY(date) >="6" AND HOUR(date)="0" '); 
  $row = mysql_fetch_assoc($result); 
  $h0= $row['value_sum'];
?>

<?php
  $result = mysql_query('SELECT date,SUM(value) AS value_sum FROM me Where WEEKDAY(date) >="6" AND HOUR(date)="1" '); 
  $row = mysql_fetch_assoc($result); 
  $h1= $row['value_sum'];
?>

2 个答案:

答案 0 :(得分:0)

我建议你修改你的SQL语句,以便在一次访问中获取所有元组,然后遍历元组(在内存中)来总结值项

{% for article in articles %}
    {{ article.author.name }}
{% endfor %}

执行SQL语句 - 由于多种原因 - 比在数组中所有元素的循环中执行PHP代码需要更多的资源,并且需要更长的时间。

此解决方案仅执行一个SQL查询,而不是24个查询。

(并且,是的:使用mysql i 或PDO而不是mysql,已弃用)

答案 1 :(得分:-1)

尝试使用for loop并将结果添加到数组中。

<?php
  $resultArray = array();
  for($i = 0; $i < 24; $i++;) {
     $result = mysql_query('SELECT date,SUM(value) AS value_sum FROM me Where WEEKDAY(date) >="6" AND HOUR(date)="' . $i . '" '); 
     $row = mysql_fetch_assoc($result); 
     resultArray[] = $row['value_sum'];
  }
?>