I have such a table:
name value1 value2 value3
---------------------------
name1 1 1 1
name2 1 1 2
name3 2 2 11
name4 2 12 2
name5 3 3 8
name6 3 3 2
what I need is such a result:
name value1 value2 value3
---------------------------
name2 1 1 2
name4 2 12 2
name5 3 3 8
I.e:
- Exact 1 enty for each group of
value1
; - This entry must have the max value of
value2
in this group ofvalue1
; - This entry must have the max value of
value3
in the group ofvalue2
.
After having searched in Internet, I have got a solution by using scalar subquery in SELECT
list as a single column, but it is very ugly and complex, since the same sub query must be run for each of the column value1
, value2
, value3
.
SQL Cookbook mentions a solution in recipe 14.10 via defining a type as object, but i prefer a solution in a single SELECT statement.
Any easy way?