Juan Fuentes <juanmarianofuen...@gmail.com> writes: > As you could see the query includes castings, we noticed testing with > Postgres 12 that the castings of the CASE THEN statement (commented out > below) where failing in some cases, of course if you do the INNER JOIN and > CASE WHEN first our expectation is that the value can be casted.
You're unlikely to get any useful comments on this if you don't provide a self-contained example. The query by itself lacks too many details. As an example, one way "t7.value::numeric = 1" could fail despite being inside a CASE is if t7 is a view whose "value" column is actually a constant. Flattening of the view would replace "t7.value" with that constant, and then constant-folding would cause the failure, and neither of those things are prevented by a CASE. I kind of doubt that that's the specific issue here, but I'm not going to guess at what is in your thirty-some input tables. regards, tom lane