18.06.2007 11:30
Vlad
 
select sm.article,
sm.shortname,
sm.mesabbrev,
sas.idassort,
sc.salerate,
sc.showlevel,
smg.quantity,
smp.price
from smstocklevels@medunco sc,
smcard sm,
smgoods smg,
smprices smp,
smcardassort@medunco sas
where sm.article in (select article from smcardassort@medunco where idassort in (278))
and sas.article=sm.article
and sc.article=sm.article
and sc.storeloc=2
and smg.article=sm.article
and smg.storeloc=2
and smp.article=sm.article
and smp.storeloc=2
and smp.pricetype=1
Этот запрос отрабатывает за 1сек, как только добавляем еще одно условие sas.idassort in (278) запрос виснет намертво.
В чем может быть проблемма?
18.06.2007 11:41
Mtirt
 
Это по линку к базе цепляешься?

select * in всегда медленно обрабатывается. А по линку - очень медленно.
Нельзя условие переформулировать?

Если нельзя, то может сначала в темповую таблицу скинуть список карточек, а потом делать запрос по выборке данных?
18.06.2007 11:53
Vlad
 
Проверил этот запрос на всех магазинах нормально отработал только на одном 1мин 30сек.Условие к сожелению непеределаешь. А про темповую таблицу по подробней можно?
18.06.2007 11:59
Mtirt
 
сначала ты делаешь:

insert into TTemp
select article from smcardassort@medunco where idassort in (278)

А потом в своем запросе выбираешь из TTemp...
18.06.2007 12:04
Vlad
 
Темповую талицу создавать специально надо или запросом создается?
18.06.2007 12:08
Mtirt
 
По хорошему создавать надо. Но можно попытаться какую-нибудь из существующих приспособить...
20.06.2007 08:47
Vlad
 
Спасибо Mirt, решили оставить запрос как есть, только без условия sas.idassort in (278) а отбирать уже по этому условию внешней прогой. Маловат я еще в структуру БД лезть
Часовой пояс GMT +3, время: 11:42.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.