如何在python3中使用sqlobjectORM构造带位操作的sql查询



我正试图使用sqlobject mapper在python3中创建一个查询。我有一个要求,过滤自定义字段的基础上的输出的bitise操作。查询如下:

query = sqlobject.AND(query,dl.<table_object>.q.anomalyType & alert_type == alert_type)

但是当实际的SQL转换发生时;被转换为";SQL AND";,这改变了查询的整个含义。

有人能建议在python3中的查询sqlobject中添加位运算符的正确方法吗?

SQLConstant就可以做到这一点。工作的sql查询如下所示:

query = sqlobject.AND(query, sqlbuilder.SQLConstant(f'anomalyType & {alert_type}') == alert_type)

感谢@phd的帮助。

最新更新