将下标应用于 PostgreSQL 中的文本数据类型?
希望我读得正确。 下标可以用在文本类型中,比如select name[1]
会获取文本列name
的第一个字符? 现在这行不通了。可能需要一个功能? 当我在 psql 中执行此操作时。
错误:42804:无法为文本添加下标,因为它不支持下标
位置:transformContainerSubscripts,parse_node.c:275
那么,如何使下标可用于文本数据类型?
https://www.postgresql.org/docs/release/14.0/
下标现在可以应用于其所属的任何数据类型 有用的符号,不仅仅是数组。在此版本中,jsonb 和 hstore 类型已经获得了下标运算符。
Hope I read it correctly.
Subscripting can be used in text type, like select name[1]
will get the first character of the text column name
?
Now this will not work. Probably need a function?
when I do it in psql.
ERROR: 42804: cannot subscript type text because it does not support subscripting
LOCATION: transformContainerSubscripts, parse_node.c:275
So, how to make subscripting available for text data type?
https://www.postgresql.org/docs/release/14.0/
Subscripting can now be applied to any data type for which it is a
useful notation, not only arrays. In this release, the jsonb and
hstore types have gained subscripting operators.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我得到了同样的错误如下:
当我尝试获取第二个字符
b
时,如下所示:因此,我用下面的这些方法创建了一个数组,然后我可以获取第二个字符
b
没有错误。 *我的回答详细解释了如何声明和使用数组:I got the same error below:
When I tried to get the 2nd character
b
as shown below:So, I created an array with these ways below, then I could get the 2nd character
b
without error. *My answer explains how to declare and use an array in detail: