SQLite平均函数

时间:2014-07-13 17:10:40

标签: php sqlite average

我目前正在使用以下代码来使用PHP从SQLite数据库中获取数据。这将从column1中提取日期大于我指定日期的所有数据。输出进入$ output,然后我可以将数据粘贴在表格中。

class MyDB extends SQLite3
{
  function __construct()
  {
     $this->open('database_name.sdb');
  }
}
$db = new MyDB();
if(!$db){
   echo $db->lastErrorMsg();
} else {
  echo "Opened database successfully<br /><br />";
}

$sql =<<<EOF
  SELECT * FROM "archive" WHERE "dateTime" > $specified_time;
EOF;
$ret = $db->query($sql);
while($row = $ret->fetchArray(SQLITE3_ASSOC) ){
$output = $row['column1'];
}

我现在想要在第2列和第2列中获得值的平均值。 (日期大于特定日期)并将其放入PHP变量中。这是我正在使用的代码,但它返回了一个空白。我也尝试过其他一些东西,但无济于事。

$sql =<<<EOF
SELECT AVG("column2") FROM "archive" WHERE "dateTime" > $specifiedtime;
EOF;
$ret = $db->query($sql);
while($row = $ret->fetchArray(SQLITE3_ASSOC) ){
$output = $row['AVG("column2")'];
}

有什么想法吗? 感谢。

1 个答案:

答案 0 :(得分:2)

为计算列

使用别名
SELECT AVG(column2) as avg_col2 FROM ...

然后你可以用PHP命名该列

$output = $row["avg_col2"];