【发布时间】:2021-12-16 16:24:52
【问题描述】:
SQLAlchemy 是否支持用户定义的变量?
https://dev.mysql.com/doc/refman/5.6/en/user-variables.html
问题:我正在尝试获取两个连续行之间的时间差。我可以通过使用用户定义的变量编写原始 SQL 查询来做到这一点。这是否可以在 SQLAlchemy 中完成而无需编写原始 SQL 查询?
我的桌子是这样的:
id user_id date
1. user_1 01-11-2021 00:00
2. user_1 01-11-2021 00:00
3. user_1 01-11-2021 00:01
4. user_2 01-11-2021 00:00
输出类似于
id user_id time_diff
1. user_1 NULL
2. user_1 0
3. user_1 1
4. user_2 NULL
【问题讨论】:
-
SQLAlchemy 是否支持用户定义的变量? 外部脚本无法访问用户定义的 MySQL 变量。但是您可以在原始 SQL 查询中使用它们。 这是否可以在 SQLAlchemy 中完成而不编写原始 SQL 查询? 是的,您可以构建一个使用 3 个源表副本的查询。
-
@Akina 外部脚本无法访问用户定义的 MySQL 变量。 为什么会这样?你能解释一下或链接到解释这一点的页面吗?
-
如果外部脚本想知道 UDV 的值,它必须查询它(如
SELECT @variable')并接收该值。没有别的办法。除了查询它之外,无法访问该变量。
标签: python mysql sqlalchemy user-variables