列出现有 entries/tuples 的所有零件表的替代方法
Alternative way to list all part tables that have existing entries/tuples
我有一个主主题 table,它有几个部分 table。 Table.delete() 的一个方便之处在于它会显示一个提示,其中包含在该主题下创建的所有现有条目。除了 delete() 之外,还有其他方法可以打印在单个主题条目下创建了哪些部分 table 条目吗?
谢谢
这是一个缓慢的过程,但我想我会执行以下操作以查看条目在哪里:
(subject.Subject & 'subject="<NAME>"').descendants(as_objects=True)
不确定 children
(降低 1 级)或 descendants
(一直降低)是否更好。 delete
给出完整的后代集合,使用 table.delete_quick(get_count=True)
.
编辑:
要获得计数,您可能需要:
[print(i.table_name,len(i)) for i in (subject.Subject & 'subject="<NAME>"').descendants(as_objects=True)]
要获取受某些限制(例如subject_name
)限制的所有部分表的条目数,您可以这样做:
restriction = {'subject_name': 'my_star_subject'}
for part_table in Subject.parts(as_objects=True):
part_table_query = part_table & restriction
print(f'{part_table.table_name}: len(part_table_query)')
我有一个主主题 table,它有几个部分 table。 Table.delete() 的一个方便之处在于它会显示一个提示,其中包含在该主题下创建的所有现有条目。除了 delete() 之外,还有其他方法可以打印在单个主题条目下创建了哪些部分 table 条目吗?
谢谢
这是一个缓慢的过程,但我想我会执行以下操作以查看条目在哪里:
(subject.Subject & 'subject="<NAME>"').descendants(as_objects=True)
不确定 children
(降低 1 级)或 descendants
(一直降低)是否更好。 delete
给出完整的后代集合,使用 table.delete_quick(get_count=True)
.
编辑: 要获得计数,您可能需要:
[print(i.table_name,len(i)) for i in (subject.Subject & 'subject="<NAME>"').descendants(as_objects=True)]
要获取受某些限制(例如subject_name
)限制的所有部分表的条目数,您可以这样做:
restriction = {'subject_name': 'my_star_subject'}
for part_table in Subject.parts(as_objects=True):
part_table_query = part_table & restriction
print(f'{part_table.table_name}: len(part_table_query)')