求问一条sql语句(MySQL)

请问各位大神
select MAX(DATE_ADD( a ,INTERVAL b DAY)) , a , b FROM test GROUP BY type;
这条sql语句,我想要MAX里面的a和b,怎么取得。
我想要最大的值里面的a和b,但我只能得到第一条数据的a、b

求给位大神帮忙啊~~~

数据库里数据
sql语句和结果

我想要得到的数据是
a:2017-07-06 b:8 type:1
a:2017-07-19 b:8 type:2

sql数据
INSERT INTO test VALUES (1, '2017-7-6', 1, 1);
INSERT INTO test VALUES (2, '2017-7-7', 2, 1);
INSERT INTO test VALUES (3, '2017-7-8', 1, 1);
INSERT INTO test VALUES (4, '2017-7-6', 8, 1);
INSERT INTO test VALUES (5, '2017-7-6', 2, 2);
INSERT INTO test VALUES (6, '2017-7-7', 5, 2);
INSERT INTO test VALUES (7, '2017-7-9', 4, 2);
INSERT INTO test VALUES (8, '2017-7-19', 8, 2);
INSERT INTO test VALUES (9, '2017-6-30', 1, 2);

select * from test a join (
select type, MAX(DATE_ADD( a ,INTERVAL b DAY)) dd FROM test group by 1) b on a.type=b.type
where date_add(a, interval b day) = b.dd

问一下您这条sql执行不会报错吗