Consider the following table:

```
  A  |  B
-----|------
 123 |  1
 456 |  2
 123 |  5
 456 |  0
 789 |  3
 789 |  9
 123 |  6

```

I want to get the following output:

```
  A  |  B
-----|------
 123 |  6
 456 |  2
 789 |  9

```

In other words: the greatest value of B for each equal value in A. 

The initial table above comes already from another query which only selects duplicates of `A`:

```
select A, B from tbl where A in (
  select A from tbl
  group by A
  having count(A) > 1
);

```

I tried wrapping/integrating another `group`ing function with and without `max(B)` around/into this query, but no success.

How can I get the desired output?