Query 2 will result in empty result set in the condition mentioned below.
You can get this by following SQL execution order.
FROM -> WHERE -> GROUP BY -> HAVING -> SELECT
Now assume the condition mentioned, we have a table with n customers having same balance and Query 2 is having WHERE condition as "A.balance < B.balance" to select each row. WHERE condition will be failed for each row since there is no customer in B having greater balance than customers in A. Thus no row will be selected after executing the WHERE condition. Since there is no row selected then nothing will be grouped by GROUP BY.
Hence in the assumed case, Query 2 will not display and rank 1.Moreover it will not even display any row.