-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
On 07/29/2015 05:13 PM, Tom Lane wrote:
> What's possibly more palatable is to introduce some other special
> notation for "obtain the type of this expression at parse time".
> I'm thinking for example about
>
> SELECT x::pg_typeof(some_expression) FROM ...
>
> Maybe it would be too confusing to overload "pg_typeof" this way,
> in which case we could choose some other name. Aside from that
> consideration, this approach would have the effect of preventing
> "pg_typeof" from being used as an actual type name, or at least
> from being used as a type name that can have typmod, but that
> doesn't seem like a huge drawback.
>
> This way would have the rather nice property that some_expression
> could actually be any parseable expression, not merely a qualified
> variable name (which I think is the only case that we'd have had
> any hope of supporting with %TYPE).
You think this could be made to work?
SELECT x::TYPE OF(some_expression) FROM ...
Then we would also have:
SELECT CAST(x AS TYPE OF(some_expression)) FROM ...
Seems nicer than pg_typeof
- --
Joe Conway
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.22 (GNU/Linux)
iQIcBAEBAgAGBQJVuW3GAAoJEDfy90M199hlY6UP/026qCp5sxSz8zsnY9FyqqMp
Xf+a1nlqZFB821zQtMx7NtKtxjiC45jqbPSerLqCSbbpMftLG/iy5+/wdWJqAIoK
283Q23hD6r7hPwR2nown3BH5F1AFGCppG5KWebOgl01jVQSWBfFiRLrImFi/2FVs
sp3fHFmONp2kIYoAZwyFyZXv2n4D9Qhp0tIq94Dz0LGaszsfpYObCapPkgwAgaYZ
TSk5FAmD+IIJsNadhuk6IfJRObY5DgLL5keJSiuNs4Xpixq72KjqgnYQeXqgoT6U
AOqEkyg/KejkBSmuZRtHc9qnewGPzQn9TBXZEGPF+/ifpHC7+gL2au97kUW35j5l
3Ox57hTTRgr3oRvrEkGN/1uM/yDiobXb2HOp70mIeuYAWp3juwfxZQybRMYCoM8a
O/oyJqTSX2Dn/GkzeAOxbaQJulMeJfkivnwak0BhdaX3d4bDJz1ylNgz/B4Gtcnn
x4FVdTEfTBGFKFmfyDB5iAvpRrDCCDYcd2KcHA1J34vm8Ccm6m3aauJoi4zqsubh
bQnia2aoIAtnIOei/zVaST7+G+B3WAod3MDmrctjkx1lACTIeQVHq7q/A3iUPwcF
7Lfu9vr/6IBsAlvkdsX7zNZsIzAlov+ObrKZHBxeq2lB31MH1jeulX8lx+131+aI
ATx7kmeBlB60dkccMEhv
=VgLe
-----END PGP SIGNATURE-----