2010-10-09 6 views
0

Существуют ли существенные проблемы с производительностью при использовании вложенных запросов (2 уровня в макс) в PostgreSQL? Я использую версию 8.4.2Производительность вложенных запросов PosgreSQL

Я спрашиваю, потому что я планирую в ближайшее время использовать довольно много тех, кто на занятом сайте ..

+0

Не слишком явный капитан, но на самом деле я бы не стал за него ни слова. Обязательно проверяйте его своими запросами и убедитесь, что он соответствует вашим потребностям. – Kuberchaun

ответ

1

Не совсем.

Если вы хотите улучшить, не забывайте периодически анализировать все таблицы.

1

Ваш вопрос waaaaaaaaaaaaaaaaaaaaaaay тоже общий. В Postgres нет какой-либо неотъемлемой проблемы при использовании «вложенных» запросов, независимо от того, сколько уровней находится в глубине. Если у вас есть проблемы, вам нужно отправить конкретные запросы.

Дополнительно ... если вы разрабатываете новую систему, то почему 8.4 и не 9.0? И даже на 8.4 вы должны обновиться до 8.4.5.

+0

Согласен, но это может быть лучше поставлено в качестве комментария к вопросу. – Edmund

1

Скучный ответ: это зависит от запроса и ваших данных.

Чтобы написать (и прочитать и понять), вложенный запрос может быть проще, чем писать не вложенные, но вы, , могли бы в конечном итоге заплатить цену за снижение производительности. Во время моего предыдущего проекта базы данных мы закончили переписывание довольно многих из наиболее важных запросов, чтобы избежать вложенности, и мы увидели улучшения производительности.

EXPLAIN - ваш друг. Вы должны научиться любить его и как его использовать :) http://www.postgresql.org/docs/current/static/sql-explain.html

Смежные вопросы