Båda BigDecimal och Double utöka Number , så du kan göra:
Number singleResult = ((Number) entityManager.createNativeQuery(sqlString).getSingleResult());
double resultAsDouble = singleResult.doubleValue();
BigDecimal resultAsBigDecimal = new BigDecimal(singleResult.toString());
Använd resultAsDouble om du vill ha den primitiva typen, men inte bryr dig om att bevara den exakta precisionen, använd resultAsBigDecimal annars.