SQLite 是否支持公用表表达式?
我想像这样运行查询:
with temp (ID, Path)
as (
select ID, Path from Messages
) select * from temp
SQLite 是否支持公用表表达式?
我想像这样运行查询:
with temp (ID, Path)
as (
select ID, Path from Messages
) select * from temp
另一种解决方案是在您的应用程序中集成“CTE 到 SQLite”转换层:
"with w as (y) z" => "create temp view w as y;z"
"with w(x) as (y) z" => "create temp table w(x);insert into wy;z"
作为一个(丑陋,绝望,但有效)的例子: http ://nbviewer.ipython.org/github/stonebig/baresql/blob/master/examples/baresql_with_cte_code_included.ipynb
SQLite 不支持 CTE、窗口函数或任何类似的东西。但是,您可以编写自己的用户函数,您可以通过使用sqlite_create_function()使用 SQLite API 将它们注册到数据库来在 SQLite 中调用这些函数。您将它们注册到数据库中,然后您可以在您自己的应用程序代码中使用它们。您可以创建一个聚合函数,该函数将根据各个列的值执行一系列平均值的总和。对于每个值,都会调用一个步进式回调函数,允许您对数据执行一些计算,并且还可以使用一个用于保存状态数据的指针。