My table looks like this.
Location Head Id IntTime
1 AMD 1 1
2 INTC 3 3
3 AMD 2 2
4 INTC 4 4
5 AMD2 1 0
6 ARMH 5 1
7 ARMH 5 0
8 ARMH 6 1
9 AAPL 7 0
10 AAPL 7 1
Location is the primary key. I need to GROUP BY Head and by Id and when I use GROUP BY, I need to keep the row with the smallest IntTime.
After the first GROUP BY Id, I should get (I keep the smallest IntTime)
Location Head Id IntTime
2 INTC 3 3
3 AMD 2 2
4 INTC 4 4
5 AMD2 1 0
7 ARMH 5 0
8 ARMH 6 1
9 AAPL 7 0
After the second GROUP BY Head, I should get (I keep the smallest IntTime)
Location Head Id IntTime
2 INTC 3 3
3 AMD 2 2
5 AMD2 1 0
7 ARMH 5 0
9 AAPL 7 0
When I run the following command, I keep the smallest IntTime but the rows are not conserved.
SELECT Location, Head, Id, MIN(IntTime) FROM test
GROUP BY Id
Also, to run the second GROUP BY, I save this table and do again
SELECT Location, Head, Id, MIN(IntTime) FROM test2
GROUP BY Head
Is there a way to combine both commands?
[Edit: clarification] The result should not contain two Head with the same value or two Id with the same value. When deleting those duplicates, the row with the smallest IntTime should be kept.