postgresql数组类型是否保留数组的顺序?

时间:2015-02-03 20:09:38

标签: arrays postgresql

我阅读了PostgreSQL v 9.3数组(http://www.postgresql.org/docs/9.3/static/arrays.html)的文档,但我没有看到有关排序的问题。有人可以确认Postgres在插入数组列时保留了数组的插入顺序/原始顺序吗?这似乎是这种情况,但我想绝对确认。

谢谢。

2 个答案:

答案 0 :(得分:7)

文档完全清楚,数组在顺序很重要的情况下很有用,因为它明确地记录了查询数组中的特定位置。如果这些立场不可靠,这些查询就毫无意义。 (在这一点上使用“数组”一词也很清楚,因为它是艺术术语:数组本质上是有序数据类型 ;允许包含重复数据的无序集合将是一个包,而不是一个数组,就像一个不允许重复的无序集合一样。)

请参阅“按季度付费”的the examples given in section 8.1.4.3,数组中的索引位置表示正在查询季度。

答案 1 :(得分:1)

在文档中找不到,但我很确定。是的,订单保留。 [2,4,5]与[5,2,4]不同。
如果我错了,索引就无法工作。