|
|
|
Наследуемые таблицы
|
|||
|---|---|---|---|
|
#18+
Народ подскажите какой из запросов будет быстрее и насколько Есть 2 таблицы, они связаны по Foregin Key Я делаю выборку с JOIN либо переделать таблицы на связь INHERITS Имеет ли толк переделывать базу, таблиц таких много в базе, или выигрыш производительности будет очень малым? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2015, 14:06 |
|
||
|
Наследуемые таблицы
|
|||
|---|---|---|---|
|
#18+
westvovikНарод подскажите какой из запросов будет быстрее и насколько Есть 2 таблицы, они связаны по Foregin Key Я делаю выборку с JOIN либо переделать таблицы на связь INHERITS Имеет ли толк переделывать базу, таблиц таких много в базе, или выигрыш производительности будет очень малым? летять два крокодила: - один -- синий, другой -- на север. сколько весит килограмм апельсинов ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2015, 14:29 |
|
||
|
Наследуемые таблицы
|
|||
|---|---|---|---|
|
#18+
westvovik, продемонстрируй, как ты собрался инхерачить таблицы вместо джоина. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2015, 14:31 |
|
||
|
Наследуемые таблицы
|
|||
|---|---|---|---|
|
#18+
p2., А в чем проблема то, вот из доков CREATE TABLE cities ( name text, population float, altitude int -- in feet ); CREATE TABLE capitals ( state char(2) ) INHERITS (cities); Дальше работаем тупо с таблицей cities и в ней поля уже будут от capitals Либо я делаю CREATE TABLE cities ( capitals_id int name text, population float, altitude int -- in feet ); CREATE TABLE capitals ( id int NOT NULL PRIMARY KEY, state char(2) ); Связываю их foregn ключем и дальше уже запрос делаю с JOIN Или я что то не понимаю? Когда используется механизм INHERITS PG сам создает в системных таблицах связь? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2015, 14:42 |
|
||
|
Наследуемые таблицы
|
|||
|---|---|---|---|
|
#18+
westvovik, А если между 2 таблицами будет 2 внешних ключа? Не надо этого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2015, 14:55 |
|
||
|
Наследуемые таблицы
|
|||
|---|---|---|---|
|
#18+
vyegorov, Я вообще хотел узнать на сколько быстрее будет этот механизм впринципе ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2015, 15:02 |
|
||
|
Наследуемые таблицы
|
|||
|---|---|---|---|
|
#18+
westvovik, Это не тот механизм. Прочитайте, наконец, документацию и выполните команды из примера. Тогда вам станет ясно, что «связаны по Foregin Key» и наследование — про разные вещи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2015, 15:06 |
|
||
|
Наследуемые таблицы
|
|||
|---|---|---|---|
|
#18+
westvovikНарод подскажите какой из запросов будет быстрее и насколько Есть 2 таблицы, они связаны по Foregin Key Я делаю выборку с JOIN либо переделать таблицы на связь INHERITS Имеет ли толк переделывать базу, таблиц таких много в базе, или выигрыш производительности будет очень малым? Побарабану. Внутри наследование -- точно такая же связь по FK-PK. Никакого выигрыша не будет. Если тебе это надо/удобно в предметной области -- то вперёд. Ради производительности -- не стоит. В принципе сейчас это -- устаревшая фича, никому ненужная, всякие ORM это делают без явного наследования в БД. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2015, 18:15 |
|
||
|
Наследуемые таблицы
|
|||
|---|---|---|---|
|
#18+
MasterZivВнутри наследование -- точно такая же связь по FK-PK.Скорее Union-PK. Из задач джоина на наследование можно переложить только специфичные узкозти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2015, 18:46 |
|
||
|
Наследуемые таблицы
|
|||
|---|---|---|---|
|
#18+
А что, постгри таки сделало, что наследуются не только собственно таблица, но и индексы по ней? Если нет, боюсь про производительность можно не думать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2015, 19:31 |
|
||
|
Наследуемые таблицы
|
|||
|---|---|---|---|
|
#18+
MasterZivПобарабану. (1)Внутри наследование -- точно такая же связь по FK-PK . Никакого выигрыша не будет. Если тебе это надо/удобно в предметной области -- то вперёд. (2)Ради производительности -- не стоит. В принципе сейчас это -- устаревшая фича, (3)никому ненужная , всякие ORM это делают без явного наследования в БД. (1)Внутри наследование -- точно такая же связь по FK-PK . Что? Я не знаю о чем Вы, но к PG это не относится. Там аналог не JOIN, а UNION двух таблиц. (2)Ради производительности -- не стоит. Это точно... но по другой причине. Там у наследника ключи родителя не работают, тормоза. (3)никому ненужная Она никому не нужная все это время была, потому что недоделанная, и, следовательно, тормоза. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 09.10.2015, 19:36 |
|
||
|
|

start [/forum/topic.php?fid=53&tid=1997720]: |
0ms |
get settings: |
11ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
167ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 285ms |
| total: | 542ms |

| 0 / 0 |
