Postgresql agregado array

Hola tengo dos mesas

Student
--------
Id  Name
1   John    
2   David
3   Will

Grade
---------
Student_id  Mark
1           A
2           B
2           B+
3           C
3           A

¿Es posible hacer una selección nativa de Postgresql para obtener resultados como este?

Name    Array of marks
-----------------------
'John',     {'A'}
'David',    {'B','B+'}
'Will',     {'C','A'}

Perono Me gusta esto

Name    Mark
----------------
'John',     'A'
'David',    'B'
'David',    'B+'
'Will',     'C'
'Will',     'A'

Respuestas a la pregunta(4)

Su respuesta a la pregunta