我应该在PostgreSQL中使用cast(x as typename)
还是x::typename
?
除documentation中的一句话外,我无法找到x::typename
版演员的任何文档(“默认情况下,只能通过显式转换请求调用强制转换,是一个显式的CAST(x AS typename)或x :: typename构造。“
唯一不同的是cast(x as typename)
在sql-standard而x::typename
不是吗?
我确实更喜欢x::typename
,因为它更短。
答案 0 :(得分:5)
x::typename
是特定于postgresql的。如果你喜欢它而且它不必在非postgresql数据库上工作,你可以使用它。
施法手册为here。正如您将看到的那样,有第三种风格,但不推荐使用。