SQLAlchemy select 中的表别名、列别名


难免要用到连表查询,这时候如果一个表不止用一次,或一个列名可能产生冲突,就需要用到别名,同时表别名还能优化查询语句的长度和可读性,SQL 里面的 SELECT,则会用到 AS 或者不用 as 就直接跟在项目后面即可。

那在 SQLAlchemy select 中要怎么实现呢:

不多说,上例子:

# 表别名:select * from my_customer_table as customer
customer = my_customer_table.alias('customer')

# 列别名 select user.name as username from user
columns = [
    customer,
    user.c['name'].label('username')
]

这样就可以了。