tipos funciones español ejemplos desde consultas complejas cero aprender sql postgresql postgresql-9.2

funciones - manual de postgresql 10 en español pdf



Cuál es la cantidad máxima de columnas en una consulta de selección de PostgreSQL (4)

¿Sabes cuál es el número máximo de columnas que se pueden consultar en Postgresql? Necesito saber esto antes de comenzar mi proyecto.


Con el uso del tipo JSON / JSONB, casi no hay necesidad de tener muchas columnas en una tabla.

Y, en casos excepcionales, si llegara al límite de columna máximo de su sistema de base de datos, tal vez podría usar una implementación RDBMS de una hoja de cálculo, con una tabla como la siguiente:

create table wide_table( id serial not null primary key ,rownum integer not null ,colnum integer not null ,colname varchar(30) not null ,coltype varchar(30) not null ,nullable boolean not null ,collen integer ,colprec integer ,colscale integer ,colvalue raw(2000) ,unique (rownum,colnum) );

Esto permitiría tener un número de columnas prácticamente ilimitado, pero usarlo sería menos trivial.


De acuerdo con About PostgreSQL es "250 - 1600 dependiendo de los tipos de columnas". Ver "Límites". Los tipos de columnas lo afectan porque en las filas de PostgreSQL pueden tener un máximo de 8kb (una página) de ancho, no pueden abarcar páginas. Los valores grandes en las columnas están bien porque TOAST maneja eso, pero hay un límite en la cantidad de columnas que puede caber que depende de qué tan ancho sean los tipos de datos no procesados ​​utilizados.

(En sentido estricto, esto se refiere a columnas que pueden almacenarse en filas en el disco; las consultas pueden usar conjuntos de columnas más amplios que este. No recomiendo confiar en él).

Si incluso estás pensando en acercarte a los límites de la columna, es probable que tengas problemas.

Asignar hojas de cálculo a bases de datos relacionales parece lo más simple del mundo: asignar columnas a columnas, filas a filas y listo. ¿Derecha? En realidad, las hojas de cálculo son enormes monstruos de forma libre que no imponen ninguna estructura y que pueden ser realmente poco realistas. Las bases de datos relacionales están diseñadas para manejar muchas filas más, pero a un costo; en el caso de PostgreSQL, parte de ese costo es una limitación de la amplitud que le gustan a esas filas. Cuando se enfrentan hojas de cálculo creadas por Joe User esto puede ser un problema real.

Una "solución" es descomponerlos en EAV , pero eso es indescriptiblemente lento y feo para trabajar. Mejores soluciones están usando matrices donde sea posible, tipos compuestos, hstore , json, xml, etc.

Al final, sin embargo, a veces la mejor respuesta es analizar la hoja de cálculo usando una hoja de cálculo.



Una razón para tener muchas columnas es almacenar un vector de palabras grandes, a partir de minería de textos.

La minería de texto puede producir 10.000 o más características, también conocidas como columnas.

Podría usar un almacén de datos como MonetDB , que afirma que "el número de columnas por tablas es prácticamente ilimitado".