请注意,PostgreSQL网站mentions根据列类型对250-1600列之间的列数进行限制。
情景:
假设我在 17 表中有数据,每个表都有 100 列。所有都可以通过主键连接。 如果我在一个select语句中选择所有这些列会没关系吗?查询会非常复杂,但可以通过编程方式生成。这样做的原因是获取非规范化数据以填充网页。请不要问为什么:)
很明显,如果我create table table1 as (<the complex select statement>)
,我将达到网站上提到的限制。但简单查询是否也面临同样的限制?
我可以通过自己做这个练习来找到这个。在接下来的几天里,我可能会。但是,如果有人对此进行了解,以及通过执行单个查询可能会遇到的问题,请分享相关知识。
答案 0 :(得分:1)
我找不到明确的文件来支持这一点,但我有 在Postgresql 9.1之前使用JDBC收到以下错误。
org.postgresql.util.PSQLException: ERROR: target lists can have at most 1664 entries
正如我所说,我无法找到相关的文档 因发布而异。
我找到了确认。最大值是1664。
这是在INFORMATION_SCHEMA.SQL_SIZING表中可用于确认的指标之一。
SELECT * FROM INFORMATION_SCHEMA.SQL_SIZING
WHERE SIZING_NAME = 'MAXIMUM COLUMNS IN SELECT';