我正在SQLite后端上使用SQLite,我想执行以下类型的更新:
UPDATE Measurement SET MeasurementCampaign=? WHERE filename GLOB ?但我在SQLAlchemy文档中找不到任何等效的GLOB功能。我有相当多的通配符表达式,我真的不想重写它们。
我尝试过像这样直接使用SQL:
session.query(Measurement).\
filter("WHERE filename GLOB {}".format(wildcard)).update({...})但我觉得这不对。我应该为"GLOB“创建一个GenericFunction吗?如果是的话,我将如何去做呢?
就像我说的,我有很多通配符要评估,所以如果我能一次对它们执行更新,那就更好了!
发布于 2016-09-04 09:55:19
事实证明,您可以使用“‘op”函数来实现以下目的:
session.query(Measurement).filter(Measurement.filename.op('GLOB')(wildcard)).update({...})https://stackoverflow.com/questions/39294367
复制相似问题