Bonjour à tous

Voici mon problème :

J'ai une table suivante :

id b date
777 30/07/2014
777 test 22/05/2014
666 test 15/05/2013
245 test 15/05/1989
123 test 15/05/2012

je souhaite effectuer une requête dont le résultat me donnerai la colonne "a" et le max("c") si "b" n'est pas null.

en clair mon résultat final j'aurais pour chaque id de la colonne "a" le max de la date "c" mais sans prendre en compte lorsque "b" n'est pas null

Dans mon exemple, je voudrais en résultat final :

777 22/05/2014
666 15/05/2013
245 15/05/1989
123 15/05/2012

Merci de votre aide.

Je travail sous une base Oracle.