| 417 | |
| 418 | |
| 419 | def _print_query_stats(queries): |
| 420 | number_of_queries = sum( |
| 421 | len(query_times) for query_times in queries.values() |
| 422 | ) |
| 423 | print(class="st">"-" * 50) |
| 424 | q_list = list(queries.items()) |
| 425 | q_list.sort(key=lambda rec: -sum(rec[1])) |
| 426 | total = sum([sum(t) for _, t in q_list]) |
| 427 | print(fclass="st">"total number of queries: {number_of_queries}. Total time {total}") |
| 428 | print(class="st">"-" * 50) |
| 429 | |
| 430 | for stmt, times in q_list: |
| 431 | total_t = sum(times) |
| 432 | max_t = max(times) |
| 433 | min_t = min(times) |
| 434 | avg_t = total_t / len(times) |
| 435 | times.sort() |
| 436 | median_t = times[len(times) // 2] |
| 437 | |
| 438 | print( |
| 439 | fclass="st">"Query times: {total_t=}, {max_t=}, {min_t=}, {avg_t=}, " |
| 440 | fclass="st">"{median_t=} Number of calls: {len(times)}" |
| 441 | ) |
| 442 | print(stmt.strip(), class="st">"\n") |
| 443 | |
| 444 | |
| 445 | def main(db, schema_name, table_number, min_cols, max_cols, args): |