字符串文字作为使用SQLAlchemy的“like”运算符的左侧参数

时间:2013-02-25 17:38:39

标签: python sql sqlalchemy

我试图使用SQLAlchemy构造一个查询,它产生类似(在oracle中)的东西:

select * from users u where 'john' like u.name || '%'

获取'j','jo','joh'等名称

我想有类似的东西:

session.query(Users).filter(XXX('john').like(Users.name + '%')).all()

我应该用什么来代替XXX?

2 个答案:

答案 0 :(得分:1)

使用literal构造:

session.query(Users).filter(literal('john').startswith(Users.name)).all()

答案 1 :(得分:-1)

我觉得它是这样的?

Users.query.filter(Users.name.like("%john%")).all()