eno*_*mad 5 closures sqlalchemy subquery correlated-subquery
我搜索了很多主题并没有找到答案,或者问题太复杂了.好吧 这是我的第一个问题.这是SQL
SELECT parent.*,
(
SELECT COUNT(*)
FROM child
WHERE parent.id = child.parent_id
)
FROM parent
Run Code Online (Sandbox Code Playgroud)
如何在sqlalchemy中执行此子句?
WHERE ui.invited_by = u.id
Run Code Online (Sandbox Code Playgroud)
可以在收藏中复制吗?sql表达式?PS我知道它可以通过group_by来完成.但我需要通过子查询.
谢谢.
我在这里找到了非常棒的答案。但也太复杂了。首先我想告诉大家,sql 世界中的闭包是关联性的。
这不一样,但对我有帮助。
pparent = Parent.__table__.alias('pparent') # using table directly to alias.
subquery = s.query(count(Child.id)).join(pparent) # usual thing but use aliased table.
s.query(Parent, subquery.filter(Parent.id == pparent.id).correlate(Parent).as_scalar()) #magic
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1590 次 |
| 最近记录: |