SQLiteリファレンス
当サイトはSQLiteに関するSQL文やコマンドのリファレンスサイトです。
HOME > Aから始まるSQL文・コマンド

avg関数

カラムの値の平均値を取得する関数

カラムの値の平均値を取得する方法

値の平均値を取得するには、avg関数を使用します。

avg関数の書き方

select avg(カラム名) from テーブル名

integer型のカラムに指定します。text型が混在しているカラムに対して使用した場合は、text型などを0としてカウントします。

group by句によってグループ化されたカラムに対しても平均値を出すことが出来ます。

avg関数の使い方

PHPのPDOを使用した例

SQL
<?php
$pdo = new PDO("sqlite:./test.sqlite3");
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE,PDO::FETCH_ASSOC);
$pdo->setAttribute(PDO::ATTR_TIMEOUT,5);

$pdo->exec("create table test_table ( name text , weight integer )");
$pdo->exec("insert into test_table values ( 'tanaka' , 56 ) ");
$pdo->exec("insert into test_table values ( 'suzuki' , 50 ) ");
$pdo->exec("insert into test_table values ( 'tanaka' , 44 ) ");
$pdo->exec("insert into test_table values ( 'suzuki' , 50 ) ");
$stmt = $pdo->query("select avg(weight) from test_table");
$result = $stmt->fetchAll();
print_r($result);
$stmt = $pdo->query("select name , avg(weight) from test_table group by name");
$result = $stmt->fetchAll();
print_r($result);
?>

SQLiteのGUIツールを使用した例

SQL
C:sq>sqlite3 test.sqlite3
sqlite> select avg(weight) from test_table;