sqlalchemy 常用操作

查看表

stage_se.bind.table_names()

计数

stage_se.query(func.count(SampleCurve.result_table_id)).filter(
            SampleCurve.sample_set_id == sample_set_id).scalar()

distinct

total_line_count = stage_se.query(func.count(distinct(SampleCurve.line_id))).filter(
            SampleCurve.sample_set_id == sample_set_id).scalar()

like查询

SampleResultTable.result_table_id.like(f'%{fuzzy}%') | SampleResultTable.updated_by.like(
                f'%{fuzzy}%')).limit(page_size)

删除和in查询

stage_se.query(SampleCurve).filter(SampleCurve.line_id.in_(line_ids)).delete(synchronize_session='fetch')

synchronize_session几个参数
https://stackoverflow.com/questions/49794899/why-is-my-flask-sqlalchemy-delete-query-failing/54271540

筛选null值

stage_se.query(SampleCollectRelation).filter(
                    SampleCollectRelation.result_table_id == self.result_table_id).filter(SampleCollectRelation.line_id == None)

参考

https://www.jianshu.com/p/8d085e2f2657

猜你喜欢

转载自blog.csdn.net/qq_42648305/article/details/112462908