Rambler's Top100
Форум: MS ACCESSVBVBA MS OfficeMS SQL server
Новые сообщения: 0000

Форум: MS ACCESS

Вопросы связанные с MS ACCESS

Обновить визитку
Участники «Online»
Все участники

 
 

Доброго времени суток, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: помогите оптимизировать запрос
 
 автор: scandal   (13.02.2011 в 18:25)   личное сообщение
 
 

Здравствуйте!
Имеется запрос:

SELECT DISTINCT MyQuery.year_, MyQuery.month_, MyQuery.debet, MyQuery.kredit, SumField(ostatok) AS saldo
FROM (SELECT year(dt) AS year_, month(dt) AS month_, sum(debet_) AS debet, sum(kredit_) AS kredit, debet-kredit AS ostatok 
FROM (SELECT dt, a.id, nz(max(a.amount),0) AS debet_, Sum((Nz(b.amount,0)-Nz(return,0))*price) AS kredit_ FROM oper_dealer AS a 
LEFT JOIN oper_dealer_sub AS b 
ON a.id=b.oper_dealer_id 
GROUP BY dt, a.id)  AS t 
GROUP BY year(dt), month(dt))  AS MyQuery
WHERE SumField()=0;

где SumField:

Public Function SumField(Optional Var) As Double
    Static D As Double
    If IsMissing(Var) Then
        D = 0
    Else
        D = D + Nz(Var, 0)
    End If
    SumField = D
End Function


Помогите сделать его быстрее.

Спасибо!

  Ответить  
 
 автор: Силblч   (13.02.2011 в 22:05)   личное сообщение
 
 


вы же группировку же применяете воложенных
неужели все равно ещё и дистинкт нужен?

  Ответить  
 
 автор: Explorer   (13.02.2011 в 22:50)   личное сообщение
 
 

myquery.year

дальше не читал

  Ответить  
HiProg.com - Технологии программирования
Rambler's Top100 TopList