|
19 Кб. |
|
| Существует старая база (структуру прикладываю)
Отступление: База старенькая, так сказать, первый блин комом, поэтому структура и названия полей неординарны...
tblCustomer - описывает получателей
idCustomer - уникальный номер получателя
CustomerName - имя получателя
ReportsTo - описывает принадлежность к получателю ( у получателя есть филиал) если ReportsTo = 0 (нулю) то это филиал, а если ReportsTo отлично от нуля то эта цифра показывает принадлежность к определённому филиалу.
Теперь суть вопроса: не могу написать запрос который учитывал бы операции филиалов прибавляя их к операциям Получателей. То есть в результате запроса выводились бы данные по каждому "Получателю" с учётом его филиалов
SELECT DISTINCTROW Format$(tblOperacii.Data,'"Кв"q yyyy') AS [Data по кварталам], tblOperacii.MaterialName, tblOperacii.CustomerId, Sum(tblOperacii.Summa) AS [Sum-Summa], Sum(tblOperacii.Mest) AS [Sum-Mest], Count(*) AS [Count-tblOperacii], tblCustomer.CustomerName
FROM tblCustomer LEFT JOIN tblOperacii ON tblCustomer.IdCustomer=tblOperacii.CustomerId
GROUP BY Format$(tblOperacii.Data,'"Кв"q yyyy'), tblOperacii.MaterialName, tblOperacii.CustomerId, tblCustomer.CustomerName, Year(tblOperacii.Data)*4+DatePart('q',tblOperacii.Data)-1;
|
Данный запрос выводит информацию по кварталам --- не складывая филиалы и получателей. | |
|
| |
|
|
|
| а можно базочку с кусочком данных?
уровень "вложенности" какой?
еще я так и непонял получатель принадлежит филиалу или все же филиалы получателю ?
а если ReportsTo отлично от нуля то эта цифра показывает принадлежность к определённому филиалу. |
То есть в результате запроса выводились бы данные по каждому "Получателю" с учётом его филиалов
|
| |
|
| |
|
11 Кб. |
|
| да сейчас вычленю кусочек или проще обнулю и наполню чем нить.
Уровень вложенности (не совсем понял) вроде Получатель --> Филиал не более того
еще я так и непонял получатель принадлежит филиалу или все же филиалы получателю ?
а если ReportsTo отлично от нуля то эта цифра показывает принадлежность к определённому филиалу.
То есть в результате запроса выводились бы данные по каждому "Получателю" с учётом его филиалов
|
Да опечатался : ReportsTo отлично от нуля то цифра указывает принадлежность определённому Получателю
P.s приложил чуть чуть заполненную (непонятно как ) базу | |
|
| |
|
|
|
| 1. tblCustomer.ReportsTo:
Бубликово=1 (=IdCustomer) а не 0
Зябликово=2 (=IdCustomer) а не 0
2. Группировать по полю tblCustomer.ReportsTo
? | |
|
| |
|
11 Кб. |
|
| если я правильно понял задачу
Сделал в 2 запроса
1-й собственно суммирование по коду IDCustomer
2-й Вывод NameCustomer вместо IdCustomer | |
|
| |
|
|
|
| Да osmor задача понята правильно.
Теперь понятно что и как, а то я пытался все в 1 запросе реализовать и все никак не выходило.
Благодарю за помощь. | |
|
| |