Pdo\Sqlite::createAggregateSQL 文で使用するユーザー定義集約関数を登録する 説明
public bool Pdo\Sqlite::createAggregate(
string $name ,callable $step ,callable $finalize ,int $numArgs = -1) このメソッドは Pdo\Sqlite::createFunction と似ていますが、クエリのすべての行を集約する関数を登録する点が 異なります。 この関数と Pdo\Sqlite::createFunction の最大の違いは、集約関数の登録には 2 つの関数が必要であるということです。 ヒント
このメソッドを使用してネイティブ SQL 関数を上書きすることができます。 パラメータ
戻り値
成功した場合に 例例1 Pdo\Sqlite::createAggregate example
この例では、SQLクエリの中で使用できる
この例では、
全ての行が処理された後、
SQLite は集約関数の結果を計算するため
ヒント
結果の値を context に蓄積し、最後に一括で処理する方法は推奨 「しません」。これは、SQLite のメモリ消費量が大きくなるからです。 仮に 32 バイトの長さのデータが百万件あったとして、 それを蓄積しておくのにどれだけのメモリが必要になるか 考えてみましょう。 参考
|