Показать сообщение отдельно
Старый 29.05.2007, 13:08   #26  
leshy is offline
leshy
Участник
 
118 / 11 (1) +
Регистрация: 23.02.2004
Адрес: Киев
Цитата:
Сообщение от kashperuk Посмотреть сообщение
И получаем жесткий подвисон (это - про нижеприведенное сообщение )

Уж лучше тогда вариант с count

X++:
while select table1 //ItemId
group by itemId
{
    select count(RecId) from table2
    group by itemId, feature
    where table2.itemid == table1.itemid;
    
    if (table2.recId == #NeededAmountOfFeautres)
    {
     //save value
    }
}
В твоем варианте Иван нужно использовать контейнеры. Ради справедливости следует сказать что оно и сейчас реализовано через контейнеры: сначала выбираются все конфигурации а потом накладываются в качестве фильтра на таблицу конфигураций. Это отлично работало пока некоторых конфигураций с заданными харкетиристиками не стало слишком много (в моем случае 500), в этом случае система ругается что [Microsoft][ODBC SQL Server Driver][SQL Server]Line 1: Incorrect syntax near '('. Если вариантов меньше. все работает как нужно.
Не могу понять почему: есть какое то ограничение на размер запроса? (длина строки получается больше 9000 символов) или что-то другое?