batch_query_raw

async AsyncJournalTemplate.batch_query_raw(query, show_detail=False, need_desc=False)

批量查询日记账数据

参数
  • query (QueryBuilder) – QueryBuilder类的对象,表示了筛选条件全信息

  • show_detail (bool) – 在涉及维度筛选时,是否包括其下明细,默认为False

  • need_desc (bool) – 返回数据是否包括描述,默认为False

返回类型

List[Dict]

返回

日记账查询的原始数据

示例

  1. 初始化

    from deepfos.element.journal_template import JournalTemplate
    jt = JournalTemplate('Journal_elimadj')
    t = jt.table
    q = jt.query
    
  2. 在不提供列信息时,等同于查询所有列,返回值将包括符合条件的所有非全空列数据

    # 查询account字段等于1001001且ICP字段不等于1.0的所有非全空列数据
    # 以period倒序,posting_status倒序的方式排序
    q = jt.new_query()
    data = jt.batch_query_raw(
            q.where([
                    t.account.eq("1001001"),
                    t.ICP.ne("1.0"),
                    ])
             .order_by([t.period.desc(), t.posting_status.desc()])
    )
    
  3. 在提供列信息时,将查询指定列

    # 查询ICP字段等于HC且period大于2的posting_status、invalid_status、data_status、remark列非全空列数据
    q = jt.new_query()
    data = jt.batch_query_raw(
            q.columns([t.posting_status, t.invalid_status, t.data_status, t.remark])
             .where([
                    t.ICP.eq("HC"),
                    t.period.gt("2"),
                    ]
             )
    )
    

参见

new_query,如果希望返回 DataFrame 的数据,可以使用 batch_query