def keywords(self, mf=MusicFilter(), cursor_factory=NamedTupleCursor, fast=False):
if fast:
sql = """select distinct name from tags"""
return self.__fetchfast(sql)
else:
if mf is None:
sql = """select coalesce(array_agg(distinct name), array[]::text[]) as keywords from tags"""
else:
sql = """select coalesce(array_agg(distinct keywords), array[]::text[]) as keywords from (select unnest(array_cat_agg(keywords)) as keywords from do_filter(%s::filter)) k"""
return self.__fetchone(sql, mf, cursor_factory).keywords
评论列表
文章目录