oracle sql count distinct over partition