Hasty Briefsbeta

双语

Showh HN: SQLite JavaScript - extend your database with JavaScript

a year ago
  • #JavaScript
  • #Database
  • #SQLite
  • SQLite-JS 扩展了 SQLite 的 JavaScript 能力,支持自定义函数、聚合函数、窗口函数和排序规则。
  • 安装需下载预编译的二进制文件(支持 Linux、macOS、Windows、Android、iOS 等平台)并加载扩展模块。
  • 标量函数逐行处理数据并返回单个值,适用于数据转换和计算场景。
  • 聚合函数通过多行数据计算单个结果,与标准 SQL 的 SUM、AVG 等函数类似。
  • 窗口函数可对行集合进行非折叠式操作,实现高级数据分析功能。
  • 排序规则支持自定义文本比较和排序逻辑,例如实现自然语言排序等特性。
  • 通过 sqlite-sync 可实现函数跨设备同步,确保分布式环境下的行为一致性。
  • 使用 `js_eval` 函数可直接在 SQLite 查询中执行 JavaScript 代码。
  • 典型示例包括创建年龄计算函数、中位数聚合函数和移动平均值函数。
  • 由于 SQLite 限制,更新函数需要建立独立的数据库连接进行操作。
  • 支持从源码构建,各平台提供专属的 Makefile 编译指南。
  • 本项目采用 MIT 许可证开源发布。