我正在学习使用SQL alchemy连接到mysql数据库。我想从数据库中提取以给定字符串开头的记录。我知道,对于简单的平等,我需要做的就是这个
queryRes = ses.query(Table).filter(Tablee.fullFilePath == filePath).all()
result = []
我该怎么办?
queryRes = ses.query(Table).filter(Table.fullFilePath.startsWith(filePath)).all()
result = []
也许查询看起来像这样?
q = ses.query(Table).filter(Table.fullFilePath.like('path%')).all()
答案 0 :(得分:17)
SQLAlchemy有一个startswith
column property,因此它的工作原理与您想象的完全相同:
isAssignableFrom
答案 1 :(得分:14)
这是纯SQL:
SELECT * FROM table WHERE field LIKE "string%"
SQL炼金术是:
q = ses.query(Table).filter(Table.fullFilePath.like('path%')).all()
答案 2 :(得分:1)
如果您需要不区分大小写的比较,请使用ilike
:
session.query(SomeTable).filter(SomeTable.some_column.ilike('bla%')).all()