在 SQLAlchemy 中使用 OVER 窗口函数

Vin*_*ano 6 python postgresql sqlalchemy

我如何使用 SQLAlchemy 获得有限结果的总数。我目前正在使用 Postgres,所以我知道我可以使用窗口函数。我基本上想知道如何在 SQLAlchemy 中编写以下内容:

SELECT foo
  ,count(*) OVER() AS full_count
FROM   bar
ORDER  BY <some col>
LIMIT  <pagesize>
OFFSET <offset>
Run Code Online (Sandbox Code Playgroud)

say*_*yap 3

就像是:

select(
    [
        bar.c.foo,
        func.count().over().label('full_count'),
    ],
    ...
)
Run Code Online (Sandbox Code Playgroud)

引入此功能的票证:http://www.sqlalchemy.org/trac/ticket/1844#comment :9