|
|
|
В чем разница между тип поля и тип поля[]
|
|||
|---|---|---|---|
|
#18+
Например, text и text[] ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2015, 13:28 |
|
||
|
В чем разница между тип поля и тип поля[]
|
|||
|---|---|---|---|
|
#18+
PerederiyНапример, text и text[] По идее text[] - это массив типа text :-) Хотя разница сомнительная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2015, 13:47 |
|
||
|
В чем разница между тип поля и тип поля[]
|
|||
|---|---|---|---|
|
#18+
mad_nazgul, Скалярное значение и массив, строгая типизация. Разница в том, что во втором случае нельзя массив использовать просто по имени в операциях над скалярными выражениями, нужно всегда обращаться к конкретному элементу или как-то преобразовывать массив в скалярное значение. А почему возник такой вопрос? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2015, 13:57 |
|
||
|
В чем разница между тип поля и тип поля[]
|
|||
|---|---|---|---|
|
#18+
vyegorov, если предполагается в поле хранить (и работать с ним) массив, то какой тип лучше PS Вдогонку общий вопрос. Меня убеждают, что использовать массивы - это здорово ( в базе два десятка таблиц и в каждой много полей с массивами в полях). Я признаться в своих проектах массивы вообще не использовал. Кто имеет опыт с массивами - поделитесь: плюсы и минусы ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2015, 14:28 |
|
||
|
В чем разница между тип поля и тип поля[]
|
|||
|---|---|---|---|
|
#18+
Perederiyvyegorov, если предполагается в поле хранить (и работать с ним) массив, то какой тип лучше PS Вдогонку общий вопрос. Меня убеждают, что использовать массивы - это здорово ( в базе два десятка таблиц и в каждой много полей с массивами в полях). Я признаться в своих проектах массивы вообще не использовал. Кто имеет опыт с массивами - поделитесь: плюсы и минусы Ну вообще-то массивы это уход от реляционной модели. По большому это "синтаксический сахар". Т.е. вместо нормализации БД, мы можем ввести в какую-нибудь таблицу массив. Плюсы - простота Минусы - отход от реляционной модели данных. И раньше, по моему до 8 версии, массивы тормозили. Сейчас вроде бы нормально. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2015, 14:45 |
|
||
|
В чем разница между тип поля и тип поля[]
|
|||
|---|---|---|---|
|
#18+
Perederiyесли предполагается в поле хранить (и работать с ним) массив, то какой тип лучше Реляционные СУБД строго типизированы. Если нужны временные метки, используйте timestamptz, если числа — соответствующий числовой тип. И массив строить на основе соответствующего типа. Если вы хотите хранить дома, километры и литры в одном поле типа text[], то у вас будут проблемы, даже если вы думаете (или вас убеждают) в обратном! PerederiyМеня убеждают, что использовать массивы - это здорово ( в базе два десятка таблиц и в каждой много полей с массивами в полях). Я признаться в своих проектах массивы вообще не использовал. Кто имеет опыт с массивами - поделитесь: плюсы и минусы Думаю, что вас склоняют к No-SQL (key-value). Для этого будет лучше использовать JSONB тип. Массивы очень удобны для специфических задач. Но в целом для дизайна я предпочитаю реляционную модель. Она и гибка (для построения запросов), и строга (типы данных и ограничения целостности) одновременно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2015, 15:28 |
|
||
|
В чем разница между тип поля и тип поля[]
|
|||
|---|---|---|---|
|
#18+
mad_nazgulИ раньше, по моему до 8 версии, массивы тормозили. Сейчас вроде бы нормально.Более того, в http://www.postgresql.org/message-id/flat/20178.1423598435@sss.pgh.pa.us]работе код , который позволит избежать сворачивания/разворачивания массивов (и других "пакуемых" типов данных) между вызовами функций, прирост в скорости существенный. Я надеюсь, что в 9.5 засунут, хотя бы для массивов и PL/pgSQL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2015, 15:41 |
|
||
|
В чем разница между тип поля и тип поля[]
|
|||
|---|---|---|---|
|
#18+
vyegorov Думаю, что вас склоняют к No-SQL (key-value). Для этого будет лучше использовать JSONB тип. для плоского key--value удобнее был hstore (в нём конкатенация была "искаропки") vyegorov Массивы очень удобны для специфических задач. Но в целом для дизайна я предпочитаю реляционную модель. Она и гибка (для построения запросов), и строга (типы данных и ограничения целостности) одновременно. для индексирования как по телу таблицы так и подчинённым записям реляционная модель будет пригодна , если завести такую штуку, как кросс-табличные индексы. А пока их нет -- суем все нужные подчиненки в массив -- и имеем возможность индексировать хоть GIST-ом + btree_gist. (с поиском по операторам над массивами). Хоть btree по скалярным ф-ям от массивов (применяю). В букваре по gist-ам у Бартунова встречалось. Можно комбинировать -- строгая реляционка, + триггерно поддерживаемые мат-вью (плата -- двойная и более нагрузка на диск). минусы массивов (и прочей НоСКЛ) -- стандартные средства разработки морд их не поддерживают в плане наличия готовых контролов. надо кодить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2015, 18:01 |
|
||
|
В чем разница между тип поля и тип поля[]
|
|||
|---|---|---|---|
|
#18+
эттадля индексирования как по телу таблицы так и подчинённым записям реляционная модель будет пригодна , если завести такую штуку, как кросс-табличные индексы. Да, я забыл об этом аспекте, GiST с массивами тут рулят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2015, 18:57 |
|
||
|
В чем разница между тип поля и тип поля[]
|
|||
|---|---|---|---|
|
#18+
vyegorov, минусы массивов если вы меняете содержимое починенной реляционной записи -- она меняется одна в случае массива -- поменяется вся запись "головной". каждое изменение "подчиненной" -- перезапись всего. если в массиве элементов много, добавляются удаляются они отдельными операциями -- индексы там опухают -- только в путь. а в toast-ах после чистки бывают много--гигабайтные индексы по пустой таблице тостов. требуется reindex. в общем плата не маленькая. кросс-индексы были бы гораздо предпочтительнее. IOT какой-нибудь, хотя бы -- для handjob-а. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2015, 20:41 |
|
||
|
|

start [/forum/topic.php?fid=53&fpage=115&tid=1998153]: |
0ms |
get settings: |
11ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
55ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 260ms |
| total: | 398ms |

| 0 / 0 |
