интересный код... в каком месте он НЕ должен тормозить?
Misha v.3 17.01.2004 01:40
запросы в menu... круто...
ладно, надо что-то делать, начнем понемногу:
0. лучше использовать одинарные кавычки в запросах.
1. зачем в menu $ABONENT_Fields[^table::sql{...}]? можно достать это перед меню в хеш с помощью запроса: $ABONENT_Fields[^hash::sql{... WHERE id IN (^record.menu{$record.abonentid}[,])}] или сделать join с таблицей $MAIN:abtab когда достаются записи в $record. уже получится значительное уменьшение количества запросов.
2. аналогично с $HOUSE_Fields[^table::sql{...}]
3. запрос $zaplatil(^double:sql{select sum(summ) from $MAIN:paystab where aboncode="$ABONENT_Fields.aboncode"}) можно тоже вынести из цикла и сделать что-нить типа:
$zaplatil[^hash::sql{SELECT aboncode, SUM(summ) AS sum FROM $MAIN:paystab GROUP BY aboncode}]
и получите хеш где ключ - aboncode а значение - та сумма, которую вы достаете
4. $nachisleno(^double:sql{...}) - абсолютно аналогично
P.S. если вы хотите получать нормальные ответы - форматируйте код перед постингом. лично мне разбираться в нем в таком виде было лень. написал только про то, что было на поверхности.
- help, Elvis 16.01.2004 15:52