用法:
create_aggregate(name, num_params, aggregate_class)
创建用户定义的聚合函数。
聚合类必须实现
step
方法,该方法接受参数数量num_params
(如果num_params
为 -1,该函数可以采用任意数量的参数),以及将返回最终结果的finalize
方法聚合的结果。finalize
方法可以返回 SQLite 支持的任何类型:bytes、str、int、float 和None
。例子:
import sqlite3 class MySum: def __init__(self): self.count = 0 def step(self, value): self.count += value def finalize(self): return self.count con = sqlite3.connect(":memory:") con.create_aggregate("mysum", 1, MySum) cur = con.cursor() cur.execute("create table test(i)") cur.execute("insert into test(i) values (1)") cur.execute("insert into test(i) values (2)") cur.execute("select mysum(i) from test") print(cur.fetchone()[0]) con.close()
相关用法
- Python sqlite3.Connection.create_collation用法及代码示例
- Python sqlite3.Connection.create_function用法及代码示例
- Python sqlite3.Connection.text_factory用法及代码示例
- Python sqlite3.Connection.enable_load_extension用法及代码示例
- Python sqlite3.Connection.iterdump用法及代码示例
- Python sqlite3.Connection.row_factory用法及代码示例
- Python sqlite3.Connection.backup用法及代码示例
- Python sqlite3.Cursor.executescript用法及代码示例
- Python sqlite3.Cursor.connection用法及代码示例
- Python sqlite3.Cursor.executemany用法及代码示例
- Python sqlite3.threadsafety用法及代码示例
- Python sqlite3.complete_statement用法及代码示例
- Python sqlite3.connect用法及代码示例
- Python math sqrt()用法及代码示例
- Python sklearn.cluster.MiniBatchKMeans用法及代码示例
- Python scipy.ndimage.binary_opening用法及代码示例
- Python scipy.signal.windows.tukey用法及代码示例
- Python scipy.stats.mood用法及代码示例
- Python str.isidentifier用法及代码示例
- Python sklearn.metrics.fbeta_score用法及代码示例
注:本文由纯净天空筛选整理自python.org大神的英文原创作品 sqlite3.Connection.create_aggregate。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。