sql - 如何从 postgreSQL INDEX 中选择数据?

标签 sql database postgresql

如果我使用以下命令创建索引:CREATE INDEX ixname ON tbname (id);

其中 ixname 是索引的名称,tbname 是要为其创建索引的表名,id 是索引的列索引是为了。

现在,如果我想查看 ixname 中的内容,我该怎么做? (我假设索引是具有排序列的关系/表)

最佳答案

你就是做不到。不作为客户端,不使用 SQL。

索引中的数据是 PostgreSQL 内部的,外部世界无法访问。您可以 introspect your index definitions(使用 pg_indexes 表或 pg_get_indexdef 函数),但您无法查找其中实际存储的内容。

好吧,从技术上讲,您可以在其中存储索引数据的 find the file(s)(使用 pg_class.relfilenode 并检查 base/ 子目录中的文件),并解码 binary data他们的 b 树(或者你的索引使用的任何东西),但我不确定这是你想要做的。除非您打算学习或破解 PostgreSQL 内部结构。

关于sql - 如何从 postgreSQL INDEX 中选择数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43822114/

相关文章:

mysql - 如何选择所有项目完成的所有订单?

postgresql - pg_restore 重复键和无效命令错误

sql - 00904.00000 - "%s: invalid identifier"

sql - 使用逗号分隔符拆分列

php - 在 PHP 中为空数据库查询生成错误消息

mysql - 提取日期范围之间的点击次数

postgresql - 通过身份文件进行身份验证失败,错误代码为 -18

sql - 结合嵌入式 SQL 和 libpq 的功能

mysql - 如何在 MySQL 上进行 SQL 区分大小写的字符串比较?

python - postgresql 中具有锁定和选择更新的一致性