diff --git a/sqlite_utils/db.py b/sqlite_utils/db.py index c7a7ed4..90427bf 100644 --- a/sqlite_utils/db.py +++ b/sqlite_utils/db.py @@ -1979,8 +1979,8 @@ class Table(Queryable): most_common = [ (truncate(r[0]), r[1]) for r in db.execute( - "select [{}], count(*) from [{}] group by [{}] order by count(*) desc limit {}".format( - column, table, column, common_limit + "select [{}], count(*) from [{}] group by [{}] order by count(*) desc, [{}] limit {}".format( + column, table, column, column, common_limit ) ).fetchall() ] @@ -1992,8 +1992,8 @@ class Table(Queryable): least_common = [ (truncate(r[0]), r[1]) for r in db.execute( - "select [{}], count(*) from [{}] group by [{}] order by count(*) limit {}".format( - column, table, column, common_limit + "select [{}], count(*) from [{}] group by [{}] order by count(*), [{}] desc limit {}".format( + column, table, column, column, common_limit ) ).fetchall() ] diff --git a/tests/test_analyze_tables.py b/tests/test_analyze_tables.py index 7a104e7..f0af2ca 100644 --- a/tests/test_analyze_tables.py +++ b/tests/test_analyze_tables.py @@ -51,8 +51,8 @@ def db_to_analyze(fresh_db): num_null=0, num_blank=0, num_distinct=4, - most_common=[("Joan", 3), ("Terry...", 2)], - least_common=[("Anne", 1), ("Kumar", 2)], + most_common=[("Joan", 3), ("Kumar", 2)], + least_common=[("Anne", 1), ("Terry...", 2)], ), ), (