|
|
su.dbms.sql- SU.DBMS.SQL ------------------------------------------------------------------ From : Oleg Ivantchouk 2:5020/400 09 Apr 2001 12:26:38 To : Gennady G. Kulicov Subject : Re: Hапрягите мозг - нужно оптимизировать SQL-запрос -------------------------------------------------------------------------------- Hello Gennady, Monday, April 09, 2001, 2:24:44 AM, you wrote: GGK> select * from pyramid where Scard in GGK> (select card from pyramid where Scard in GGK> (select card from pyramid where Scard in GGK> (select card from pyramid where Scard in GGK> (select card from pyramid where Scard=12)))) GGK> сама жа табличка содержит записи, пирамидообразно связанные друг с другом - GGK> у каждой записи есть поля GGK> Сard и Scard, означающие соответственно собственный уникальный номер, и GGK> номер "записи-хозяина" (соответствующий ее значению Card). GGK> Hу и нужно выбрать записи, находящиеся на 5-м уровне зависимости от данной GGK> записи (в данном случае, с номером Card =12), а записей этих может быть GGK> много, так как запись может быть "хозяином" сразу нескольких записей. GGK> Вот так, немножно запутанно, конечно, но может быть какая светлая голова GGK> чего-нить подскажет ? GGK> Потому как начиная с 1000-1200 записей в базе конструкция сия тормозит GGK> нещадно. Hе пробовал создавать индексы по обоим этим полям ? У Oracle в аналогичном случае помогло, хотя для таких вещей у него гораздо более прямой синтаксис (CONNECT BY, PRIOR). А какой сервер? Олег Иванчук mailto:ion@utg.gazprom.ru -- Отправлено через сервер Talk.Ru - http://www.talk.ru --- ifmail v.2.15dev5 * Origin: Yugtransgaz (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /su.dbms.sql/64882be0ad14.html, оценка из 5, голосов 10
|