def drop_temp_tables(self, alias): data = { 'prev_table': get_prev_agg_tablename(alias), 'prev_local': f"{alias}_prev_local", } with connections[get_icds_ucr_citus_db_alias()].cursor() as cursor: cursor.execute(self.DROP_QUERY.format(**data))
def _run_custom_sql_script(command, day=None): db_alias = get_icds_ucr_citus_db_alias() if not db_alias: return with connections[db_alias].cursor() as cursor: cursor.execute(command, [day])
def _get_rows(self, query_master=False): if query_master: objects = DishaIndicatorView.objects.using( get_icds_ucr_citus_db_alias()) else: objects = DishaIndicatorView.objects return objects.filter(month=self.month, state_name__iexact=self.state_name).values_list( *self._get_columns())
def create_temp_tables(self, table, day): data = { 'prev_table': get_prev_agg_tablename(table), 'prev_local': f"{table}_prev_local", 'prev_month': day, 'current_table': get_table_name(DASHBOARD_DOMAIN, table), 'alias': table } with connections[get_icds_ucr_citus_db_alias()].cursor() as cursor: cursor.execute(self.CREATE_QUERY.format(**data))
def _get_ucr_insertion_dates(domain, table_id, doc_ids): table_name = get_table_name(domain, table_id) with connections[get_icds_ucr_citus_db_alias()].cursor() as cursor: query = f''' SELECT doc_id, inserted_at FROM "{table_name}" WHERE doc_id = ANY(%(doc_ids)s); ''' cursor.execute(query, {'doc_ids': doc_ids}) return dict(cursor.fetchall())
def create_temp_tables(self, table, day): alias, table, ucr_alias, id_column_name = table data = { 'prev_table': get_prev_agg_tablename(alias), 'prev_local': f"{alias}_prev_local", 'prev_month': day, 'current_table': table, 'alias': alias, 'ucr_prev_local': f"{ucr_alias}_prev_local", 'id_column': id_column_name } with connections[get_icds_ucr_citus_db_alias()].cursor() as cursor: cursor.execute(self.CREATE_QUERY.format(**data))
def create_temp_tables(self, table, day): next_month_start = day + relativedelta(months=1) six_months_ago = day - relativedelta(months=6) alias, table = table data = { 'prev_table': get_prev_agg_tablename(alias), 'prev_local': f"{alias}_prev_local", 'prev_month': day, 'current_table': table, 'alias': alias, 'six_months_ago': six_months_ago, 'next_month_start': next_month_start } with connections[get_icds_ucr_citus_db_alias()].cursor() as cursor: cursor.execute(self.CREATE_QUERY.format(**data))
def execute_query(self, query): db_alias = get_icds_ucr_citus_db_alias() with connections[db_alias].cursor() as cursor: cursor.execute(query) return cursor.fetchall()[0]