Ruby on rails Rails、PostgreSQL和hstore

Ruby on rails Rails、PostgreSQL和hstore,ruby-on-rails,postgresql,hstore,Ruby On Rails,Postgresql,Hstore,如果我将这个散列值{“1”=>“1”,“3”=>“3”,“2”=>“2”}添加到PostgreSql(9.4)的hstore列中(通过rails 5}),这个散列将在hstore列下重新排序,如下所示:{“1”=>“1”,“2”=>“2”,“3”=>“3”}。是否有可能防止这种情况发生?哈希顺序在Ruby中是有保证的。我认为,因为它离开Ruby并进入数据库,您将不再得到保证。我认为postgres不会保留顺序: [hstore]对的顺序不重要(输出时可能无法再现) 如果你真的希望保留顺序,我认为

如果我将这个散列值{“1”=>“1”,“3”=>“3”,“2”=>“2”}添加到PostgreSql(9.4)的hstore列中(通过rails 5}),这个散列将在hstore列下重新排序,如下所示:{“1”=>“1”,“2”=>“2”,“3”=>“3”}。是否有可能防止这种情况发生?

哈希顺序在Ruby中是有保证的。我认为,因为它离开Ruby并进入数据库,您将不再得到保证。我认为postgres不会保留顺序:

[hstore]对的顺序不重要(输出时可能无法再现)

如果你真的希望保留顺序,我认为你运气不好。如果你希望顺序相同,那么你应该以已知的方式对Ruby哈希进行排序,然后以相同的方式对SQL进行排序。我相信有一种方法可以按键对hstore列进行排序: