PG Bug reporting form <noreply(at)postgresql(dot)org> writes:
> It would be understandable if the CAST from NUMERIC to DOUBLE PRECISION
> would digit drop, but I don't know if it's a specification or a bug to digit
> drop on CAST from DOUBLE PRECISION to NUMERIC. (translated by DeepL)
float8_numeric() only converts DBL_DIG decimal digits. We have had
discussions in the past about changing that, but so far the answer
has been "no". You have to remember that digits beyond DBL_DIG
are unreliable ... so sometimes this would make things better, but
other times it would make things worse.
If you want something that behaves like the textual display
of float8, you can always do float8value::text::numeric.
regards, tom lane