|
SQLite3::createAggregateSQL の集約関数として使用する PHP 関数を登録する 説明
public bool SQLite3::createAggregate(
string $name ,callable $stepCallback ,callable $finalCallback ,int $argCount = -1) SQL の集約関数として使用する PHP 関数を登録します。 これは SQL 文の中で使用されるものです。 パラメータ
戻り値
集約関数の作成に成功した場合に 例
例1 max_length 集約関数の例
上の例の出力は以下となります。 int(5)
この例では、テーブルのカラムに入っている一番長い文字列を集約する関数を作っています。
1行ごとに、
全ての行を処理し終わったら、SQLite は
集約結果を決めるために ヒント
値のコピーを context に保存し、一番最後に処理することは推奨できません。 なぜなら、SQLite がクエリを処理するのにたくさんのメモリを使うことになるからです。 - 100万行の情報がメモリに格納されていたとして、 それぞれの行が32バイトの長さを持っていたとすると、 どれくらいのメモリが必要になるのかを考えてみてください。 ヒント
SQLite のネイティブなSQL関数を上書きするために SQLite3::createAggregate を使うことができます。 |