python - 如何检查 SqlAlchemy 中的查询是否返回空结果?

标签 python flask sqlalchemy fastapi

我想执行这样的查询:

    query = users.select().where(users.column.id == id)
    res = await database.execute(query)

然后我想通过检查 res 添加一些错误处理。 if not res 似乎不正确。执行此操作的正确方法是什么?

最佳答案

根据查询的复杂性,将其包装在 SELECT EXISTS(...) 中可能比 SELECT ... LIMIT 1 更便宜,正如安东尼奥所描述的那样。 PostgreSQL 可能知道以相同的方式对待这些查询,但根据 this answer ,并非所有 DBMS 都可以这样做。

这种解决方案的美妙之处在于,它一找到任何结果就存在——它做的工作尽可能少,因此成本也尽可能低。在 SQLAlchemy那将是 sa.select([sa.exists(query)])

关于python - 如何检查 SqlAlchemy 中的查询是否返回空结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63059704/

相关文章:

python - 如何编辑flask-admin以支持 Multi-Tenancy ?

python - 如何使用 python Hook Windows 中的事件/消息

python - 如何诊断 Ctrl + C 不停止 pserve 的原因

python - 使用 Python 在 Jenkins 控制台输出中打印出超链接

服务层的Python/Flask最佳实践

python - flask 在容器内工作,但当我将其转发时却没有

python - Pyramid/SQL Alchemy DetachedInstanceError

postgresql - "Can' t adapt type"错误关于 SQLAlchemy/PostGreSQL 的外键属性

python - SQLAlchemy 左联接 WHERE 子句被转换为零和一

python - Tkinter 窗口位于右下角