Les deux BigDecimal et Double étendre Number , vous pouvez donc :
Number singleResult = ((Number) entityManager.createNativeQuery(sqlString).getSingleResult());
double resultAsDouble = singleResult.doubleValue();
BigDecimal resultAsBigDecimal = new BigDecimal(singleResult.toString());
Utilisez resultAsDouble si vous voulez le type primitif, mais ne vous souciez pas de préserver la précision exacte, utilisez resultAsBigDecimal sinon.