Jeg fandt en løsning på problemet. Ved at angive en maske for datoen vil den give de rigtige resultater. Bruger:
to_char(to_date('01-JAN-2015','DD-MON-YYYY') ,'J')
i stedet for
to_char(to_date('01-JAN-2015') ,'J')
Giver samme resultat gennem OpenQuery og direkte fra Oracle.