我有一个大而复杂的 sql 视图,我正在尝试调试。视图中未显示一条记录,我需要确定是哪个子句或连接导致该记录现在显示。目前我正在以非常手动的方式执行此操作,一次删除一个子句并运行查询以查看是否显示了所需的行。
我认为如果我能够以编程方式执行此操作会很棒,因为我最终会每两周一次深入研究这样的查询。
有谁知道是否有办法将 SQL 查询解析为对象树(例如 中的对象sqlalchemy.sql.expression
),以便我能够排列树并执行结果?
我有一个大而复杂的 sql 视图,我正在尝试调试。视图中未显示一条记录,我需要确定是哪个子句或连接导致该记录现在显示。目前我正在以非常手动的方式执行此操作,一次删除一个子句并运行查询以查看是否显示了所需的行。
我认为如果我能够以编程方式执行此操作会很棒,因为我最终会每两周一次深入研究这样的查询。
有谁知道是否有办法将 SQL 查询解析为对象树(例如 中的对象sqlalchemy.sql.expression
),以便我能够排列树并执行结果?
如果您还没有在 SQLAlchemy 中定义视图,我认为它对您没有帮助。
您可以尝试使用 sqlparse之类的方法,这可能会让您有所收获。您可以排列它的输出并使用 SQLA 将排列作为原始 sql 执行。