#app adset
app_list = db.session.query(
AdsetAppReport.adset_id.label("adset_id"),
func.sum(AdsetAppReport.spend).label("spends"),
).group_by(AdsetAppReport.adset_id)
#web adset
web_list = db.session.query(
AdsetReport.adset_id.label("adset_id"),
func.sum(AdsetReport.spend).label("spends"),
).group_by(AdsetReport.adset_id)
#union two tables
both_list = app_list.union(web_list)
#Query
adset_list = db.session.query(
Adset.adset_id,
Adset.user_os,
both_list.spends,
).filter(both_list.adset_id == Adset.adset_id) \
.all()
私はtwo_listとして2つのテーブルをマージして、一時テーブルにadset inner joinを作成します。 私はコードを実行するが、それは私にAttributeErrorを示す。 AttributeError:both_list 'クエリ'オブジェクトに属性 '支出'がありませんpython sqlalchemy union query、 'Query'オブジェクトには '費やす'属性がありません
テーブルの構造は何ですか?クエリを減らすことは間違いなく助けになるでしょう。さらに、 'app_list'と' web_list'は同じです。 – API
app_listはAdsetAppReportテーブル、web_listはAdsetReportテーブル、同一ではありません.2つのテーブルの構造は類似しています。 – shenyang