예제 #1
0
def person_race_count():
    query = get_person_group_count_query("race_concept_id")
    return {
        "person_list":
        convert_query_to_response(
            ("concept_id", "concept_name", "person_count"), query.all())
    }
예제 #2
0
def visit_year_count(**kwargs):
    query = db.session.query(extract("year", t_visit_occurrence.c.visit_start_date),
                             func.count(t_visit_occurrence.c.visit_occurrence_id))\
                      .group_by(extract("year", t_visit_occurrence.c.visit_start_date))

    return {
        "visit_list":
        convert_query_to_response(("year", "visit_count"), query.all())
    }
예제 #3
0
def get_top_concept_by_person_count(table, col_name, top):
    query = db.session.query(table.c.get(col_name),
                             t_concept.c.concept_name,
                             func.count(table.c.person_id.distinct()))\
                      .group_by(table.c.get(col_name), t_concept.c.concept_name)\
                      .order_by(func.count(table.c.person_id.distinct()).desc())\
                      .join(t_concept, t_concept.c.concept_id == table.c.get(col_name))
    result = query.limit(top).all()
    return convert_query_to_response(
        ("concept_id", "concept_name", "person_count"), result)
예제 #4
0
def visit_type_count():
    query = db.session.query(t_visit_occurrence.c.visit_concept_id,
                             t_concept.c.concept_name,
                             func.count(t_visit_occurrence.c.visit_occurrence_id))\
                      .join(t_concept, t_concept.c.concept_id == t_visit_occurrence.c.visit_concept_id)\
                      .group_by(t_visit_occurrence.c.visit_concept_id,
                                t_concept.c.concept_name)

    return {
        "visit_list":
        convert_query_to_response(
            ("concept_id", "concept_name", "visit_count"), query.all())
    }