小编Edg*_*tro的帖子

子选择中不存在 SQLAlchemy?

我正在尝试将此原始 sql 复制到正确的 sqlalchemy 实现中,但经过多次尝试后,我找不到合适的方法来做到这一点:

SELECT *
FROM images i
WHERE NOT EXISTS (
    SELECT image_id
    FROM events e
    WHERE e.image_id=i.id AND e.chat_id=:chat_id)
ORDER BY random()
LIMIT 1
Run Code Online (Sandbox Code Playgroud)

我得到的最接近的是:

session.query(Image).filter(and_(Event.image_id == Image.id, Event.chat_id == chat_id)).order_by(func.random()).limit(1)
Run Code Online (Sandbox Code Playgroud)

但我似乎无法找到如何放置 NOT EXISTS 子句。

任何人都可以伸出援助之手吗?

谢谢!

python sqlite sqlalchemy

5
推荐指数
1
解决办法
2962
查看次数

标签 统计

python ×1

sqlalchemy ×1

sqlite ×1