Как пронумеровать строки в запросе? Access

Ainur.sm
Дата: 02.02.2016 16:37:29
Id Статья
1 Активы


SELECT CostKind, -SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 1 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Январь,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 2 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Февраль,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 3 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Март,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 4 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Апрель,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 5 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Май,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 6 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Июнь,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 7 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Июль,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 8 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Август,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 9 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Сентябрь,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 10 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Октябрь,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 11 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Ноябрь, -SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 12 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Декабрь, Январь + Февраль + Март + Апрель + Май + Июнь + Июль + Август + Сентябрь + Октябрь + Ноябрь + Декабрь AS Итого
FROM qdfPayments WHERE qdfPayments.PaymentDate >= <FILTER1> AND qdfPayments.PaymentDate < <FILTER2> AND CostKind <>''
GROUP BY CostKind
Ainur.sm
Дата: 02.02.2016 16:45:25
Ainur.sm,

чтобы у меня в запросе добавилось еще одно поле, в которомом велась бы нумерация - 1,2,3 и т.д
AlexDE
Дата: 02.02.2016 17:25:35
Ainur.sm,

А зачем??? Номер записи и так узнать можно.Если статье расодов не принадлижит уникальный номер, то и нет смысла нумировать. Нумируют если есть уникалъный идентификатор.
Akina
Дата: 02.02.2016 17:30:06
На указанном запросе нумерация совершенно бессмысленна. Просто по причине отсутствия ORDER BY...
А при выводе на экран или принтер проще пронумеровать средствами формы/отчёта.
Ainur.sm
Дата: 02.02.2016 17:33:50
AlexDE,Чтобы добавить ИТОГ.
итог должен в конце быть. После добавление Итог в середине... надо чтоб в конце был
__Michelle
Дата: 02.02.2016 18:01:33
Ainur.sm
Id Статья
1 Активы


SELECT CostKind, -SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 1 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Январь,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 2 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Февраль,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 3 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Март,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 4 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Апрель,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 5 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Май,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 6 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Июнь,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 7 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Июль,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 8 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Август,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 9 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Сентябрь,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 10 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Октябрь,-SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 11 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Ноябрь, -SUM(qdfPayments.PaymentAmount * (Month(PaymentDate) = 12 AND qdfPayments.TransactionType = 'Расходы прочие')) AS Декабрь, Январь + Февраль + Март + Апрель + Май + Июнь + Июль + Август + Сентябрь + Октябрь + Ноябрь + Декабрь AS Итого
FROM qdfPayments WHERE qdfPayments.PaymentDate >= <FILTER1> AND qdfPayments.PaymentDate < <FILTER2> AND CostKind <>''
GROUP BY CostKind
Попутный совет.
Поскольку условие qdfPayments.TransactionType = 'Расходы прочие' проверяется для всех строк,
включите его в WHERE. Запрос станет более обозримым. И работать будет быстрее.
SELECT CostKind, 
       -SUM(PaymentAmount * (Month(PaymentDate) = 1)) AS Январь,
       -SUM(PaymentAmount * (Month(PaymentDate) = 2)) AS Февраль,
       -SUM(PaymentAmount * (Month(PaymentDate) = 3)) AS Март,
       -SUM(PaymentAmount * (Month(PaymentDate) = 4)) AS Апрель,
       -SUM(PaymentAmount * (Month(PaymentDate) = 5)) AS Май,
       -SUM(PaymentAmount * (Month(PaymentDate) = 6)) AS Июнь,
       -SUM(PaymentAmount * (Month(PaymentDate) = 7)) AS Июль,
       -SUM(PaymentAmount * (Month(PaymentDate) = 8)) AS Август,
       -SUM(PaymentAmount * (Month(PaymentDate) = 9)) AS Сентябрь,
       -SUM(PaymentAmount * (Month(PaymentDate) = 10)) AS Октябрь,
       -SUM(PaymentAmount * (Month(PaymentDate) = 11)) AS Ноябрь,
       -SUM(PaymentAmount * (Month(PaymentDate) = 12)) AS Декабрь, 
       Январь + Февраль + Март + Апрель + Май + Июнь + Июль + Август + Сентябрь + Октябрь + Ноябрь + Декабрь AS Итого
FROM qdfPayments 
WHERE TransactionType = 'Расходы прочие' AND PaymentDate >= <FILTER1> AND PaymentDate < <FILTER2> AND CostKind <>''
GROUP BY CostKind

P.S. Пользуйтесь средствами оформления кода.
Уважайте тех, кому Вы его предлагаете разбирать.
AlexDE
Дата: 02.02.2016 18:02:00
Ainur.sm,
если только для того чтоб итого в конце итог был нумироватъ не надо вполне достаточно ORDER BY, в конце концов поставьте перед словом итог какой нибудъ знак , чтоб он по алфавиту последним был. :) Можно конечно извратится и приделать дополнительную колонку что то типа
select iif(pole1= "ITOG", 99999,1), pole2, pole3..... FROM tabl Тогда итог будет внизу :) но ото из сферы екзотики.