SQLAlchemy之subquery的使用_高级查询之子查询
程序员文章站
2024-03-04 12:30:53
...
subquery的使用_高级查询之子查询
子查询即select
语句中还有select
。
那么在sqlalchemy
中,要实现一个子查询,需以下几个步骤:
- 将子查询按照传统的方式写好查询代码,然后在
query
对象后面执行subquery
方法,将这个查询变成一个子查询。 - 在子查询中,将以后需要用到的字段通过
label
方法,取个别名。 - 在父查询中,如果想要使用子查询的字段,那么可以通过子查询的返回值上的
c
属性拿到(c=Column)
。
stmt = session.query(User.city.label('city'),\
User.age.label('age'))\
.filter(User.uname == '一哥').subquery()
result = session.query(User)\
.filter(User.city == stmt.c.city, User.age == stmt.c.age).all()
上一篇: JAVA应试技巧----大数开方
下一篇: 生物信息学-2-data format