Created
May 8, 2020 22:46
-
-
Save compwron/7b52ab54750678e37f36970e6e57c25d to your computer and use it in GitHub Desktop.
query-counter.py
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# USAGE: | |
# def test_foo: | |
# stmts = [] | |
# def catch_queries(conn, cursor, statement, a, b, c): | |
# stmts.append(statement) | |
# assert most_frequent_queries(...) == ?? | |
def most_frequent_queries(queries, query_count, query_type, query_print_length): | |
select_sql_statement_groupings = {} | |
for statement in queries: | |
if statement.startswith(query_type): | |
select_sql_statement_groupings.setdefault(statement, 0) | |
select_sql_statement_groupings[statement] += 1 | |
return list(map(lambda x: (x[0][:query_print_length], x[1]), list(OrderedDict( | |
sorted(select_sql_statement_groupings.items(), key=lambda x: x[1], reverse=True)).items())[:query_count])) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment