首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQLAlchemy在mysql中支持RLIKE吗?

SQLAlchemy在mysql中支持RLIKE吗?
EN

Stack Overflow用户
提问于 2019-11-18 15:34:42
回答 1查看 253关注 0票数 1

试图在连接到mysql数据库的sqlalchemy查询中找到实现RLIKE的方法。

我们的主机名非常复杂,因此,对我们来说,使用LIKE不是一种选择。我有几十个SQL查询,它们成功地使用RLIKE查询安装了各种包的主机组,但不确定sqlalchemy如何/是否支持它。

我的子句如下所示:

代码语言:javascript
复制
(device RLIKE '^ab-.*-ceaa-b[0-9]{2}$' and package = 'package-rpm')
OR
(device RLIKE '^ab-.*-cezz-b[0-9]{2}$' and package = 'other-package-rpm')

我是python的初学者,正在取得一些进展,但我需要在脚本中实现RLIKE或类似的东西:

代码语言:javascript
复制
conditions = []
conditions.append(and_(Package.device.like('ab-pp-%'), Package.package == 'package-rpm'))
conditions.append(and_(Package.device.like('ab-zz-%'), Package.package == 'package-rpm'))

Package.query.filter(or_(*conditions)).all()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-18 16:31:05

您可以在任意函数中使用SQLAlchemy,方法是使用op方法:

代码语言:javascript
复制
conditions.append(and_(Package.device.op('rlike')('^ab-.*-ceaa-b[0-9]{2}$')), Package.package == 'package-rpm'))
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/58918059

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档