Hi guys, hoping you can help clarify what the 'hierarchy' of casts might be in function arguments.
Meaning I have the following two functions
stats.foo1 (a bigint, b bigint) returns a/b::numeric
stats.foo1 (a real, b real) returns a/b::numeric
It's essentially the same function, but I thought I had to create two to accept the different types.
However, when I call stats.foo1(3::smallint, 4::smallint) I receive the old:
ERROR: function stats.foo(smallint, smallint) is not unique
Along w/ the message to explicitly cast.
I am essentially trying to write one function that will cast "down", I guess, anything smaller than what's passed. I am guessing I only need the real/real argument signature, but I wanted some clarity from the group.
I appreciate it.