本文整理汇总了Python中daklib.dbconn.DBConn.join方法的典型用法代码示例。如果您正苦于以下问题:Python DBConn.join方法的具体用法?Python DBConn.join怎么用?Python DBConn.join使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类daklib.dbconn.DBConn
的用法示例。
在下文中一共展示了DBConn.join方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: export_external_signature_requests
# 需要导入模块: from daklib.dbconn import DBConn [as 别名]
# 或者: from daklib.dbconn.DBConn import join [as 别名]
def export_external_signature_requests(session, path):
tbl_arch = DBConn().tbl_architecture
tbl_ba = DBConn().tbl_bin_associations
tbl_bin = DBConn().tbl_binaries
tbl_esr = DBConn().tbl_external_signature_requests
tbl_suite = DBConn().tbl_suite
query = sql.select([tbl_bin.c.package, tbl_suite.c.suite_name, tbl_suite.c.codename, tbl_arch.c.arch_string, sql.func.max(tbl_bin.c.version)]) \
.select_from(tbl_esr.join(tbl_suite).join(tbl_ba, tbl_ba.c.id == tbl_esr.c.association_id).join(tbl_bin).join(tbl_arch)) \
.group_by(tbl_bin.c.package, tbl_suite.c.suite_name, tbl_suite.c.codename, tbl_arch.c.arch_string)
requests = session.execute(query)
data = {
'packages': [
{
'package': row[0],
'suite': row[1],
'codename': row[2],
'architecture': row[3],
'version': row[4],
}
for row in requests],
}
with open(path, 'w') as fh:
json.dump(data, fh, indent=2)