PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Какъв е максималният брой колони в заявка за избор на PostgreSQL

Според ограниченията на PostgreSQL това е "250 - 1600 в зависимост от типовете колони". Вижте бележката под таблицата. Типовете колони го засягат, защото в PostgreSQL редовете може да са най-много 8kb (една страница) широки, те не могат да обхващат страници. Големите стойности в колоните са ОК, защото TOAST се справя с това, но има ограничение за броя на колоните, които можете да поберете, което зависи от това колко широки са използваните не-TOAST типове данни.

(Това се отнася строго за колони, които могат да се съхраняват в редове на диска; заявките може да могат да използват по-широки набори от колони от това. Не препоръчвам да разчитате на него.)

Ако дори мислите да се доближите до границите на колоните, вероятно ще имате проблеми.

Съпоставянето на електронни таблици в релационни бази данни изглежда като най-простото нещо на света – картографирайте колони към колони, редове към редове и тръгвайте. нали така? В действителност електронните таблици са огромни чудовища в свободна форма, които не налагат никаква структура и могат да бъдат наистина лоши. Релационните бази данни са проектирани да обработват партии повече редове, но на цена; в случая на PostgreSQL част от тази цена е ограничение за това колко широки желае да бъдат тези редове. Когато се сблъскате с електронни таблици, създадени от Joe User, това може да бъде истински проблем.

Едно „решение“ е да ги разложите в EAV, но това е неописуемо бавно и грозно за работа. По-добрите решения са използването на масиви, където е възможно, съставни типове, hstore , json, xml и др.

В крайна сметка обаче понякога най-добрият отговор е да анализирате електронната таблица с помощта на електронна таблица.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Получаване на списък с дати в диапазон в PostgreSQL

  2. Променете от SQLite към PostgreSQL в нов проект на Rails

  3. psql:FATAL:база данни <user> не съществува

  4. Материализиран изглед на PostgreSQL

  5. Postgres дъмп само на части от таблици за моментна снимка на разработчиците