﻿<?xml version='1.0' encoding='UTF-8'?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>Релиб / SQL Server / Базы данных  / Запрос на подсчет суммы / Latest Posts</title><generator>InstantForum.NET v4.1.4</generator><description>Релиб</description><link>http://relib.com/forums/</link><webMaster>robot@relib.com</webMaster><lastBuildDate>Wed, 03 Dec 2008 05:55:54 GMT</lastBuildDate><ttl>20</ttl><item><title>RE: Запрос на подсчет суммы</title><link>http://relib.com/forums/Topic909869-22-1.aspx</link><description>Я нaдеюсь Вы смoжете применить этoт пример:&lt;/P&gt;&lt;P&gt;create table #tmp(&lt;BR&gt;[Month] int,&lt;BR&gt;[Quarter] int,&lt;BR&gt;[Year] int,&lt;BR&gt;[Num1] int,&lt;BR&gt;[Num2] int)&lt;/P&gt;&lt;P&gt;Insert into #tmp &lt;BR&gt;values(1,1,2006,10,5)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(1,1,2006,5,10)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(2,1,2006,10,5)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(2,1,2006,5,10)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(3,1,2006,10,5)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(3,1,2006,5,10)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(4,2,2006,10,5)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(4,2,2006,5,10)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(5,2,2006,10,5)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(5,2,2006,5,10)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(6,2,2006,10,5)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(6,2,2006,5,10)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(7,3,2006,10,5)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(7,3,2006,5,10)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(8,3,2006,10,5)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(8,3,2006,5,10)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(9,3,2006,10,5)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(9,3,2006,5,10)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(10,4,2006,10,5)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(10,4,2006,5,10)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(11,4,2006,10,5)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(11,4,2006,5,10)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(12,4,2006,10,5)&lt;BR&gt;Insert into #tmp &lt;BR&gt;values(12,4,2006,5,10)&lt;/P&gt;&lt;P&gt;select 1 as [Sort], *&lt;BR&gt;from #tmp&lt;BR&gt;union &lt;BR&gt;select distinct [Sort], isnull([Month], 13) [Month],&lt;BR&gt;isnull([Quarter], 5) [Quarter], [Year], Num1, Num2&lt;BR&gt;from&lt;BR&gt;(select 2 as [Sort],&lt;BR&gt;[Month], [Quarter], [Year],&lt;BR&gt;sum(Num1) Num1, Sum(Num2) Num2&lt;BR&gt;from #tmp&lt;BR&gt;group by [Month], [Quarter], [Year]&lt;BR&gt;With cube) as sums&lt;BR&gt;where ([Year] is Not Null) &lt;BR&gt;and (([Quarter] Is Null and [Month] Is Null) Or ([Quarter] Is Not Null))&lt;BR&gt;order by 4,3,2 &lt;/P&gt;&lt;P&gt;&lt;BR&gt;drop table #tmp</description><pubDate>Mon, 22 Jan 2007 18:20:31 GMT</pubDate><dc:creator>MFisher</dc:creator></item><item><title>RE: Запрос на подсчет суммы</title><link>http://relib.com/forums/Topic909869-22-1.aspx</link><description>Так ничего не выходит, суть проблемы в том что мне нужно чтобы сначала например шли данные затем после каждого месяца считалась сумма [сумма1] [сумма2], потом опять шли данные, потом считалась сумма также за месяц и за квартила и после этого опять данные. &lt;/P&gt;&lt;P&gt;Например:&lt;/P&gt;&lt;P&gt;sort   год    мес  квартал  сумма1 сумма2&lt;/P&gt;&lt;P&gt;1       2007   1        1            1         2&lt;BR&gt;1       2007   1        1            1         2&lt;BR&gt;&lt;FONT style="BACKGROUND-COLOR: #dddd55"&gt;2       2007  NULL  NULL         2         4 &lt;BR&gt;&lt;/FONT&gt;1       2007   2        1            1         2&lt;BR&gt;1       2007   2        1            1         2&lt;BR&gt;&lt;FONT style="BACKGROUND-COLOR: #dddd55"&gt;2       2007  NULL   NULL        2         4&lt;/FONT&gt;&lt;BR&gt;1       2007   3        1            1         2&lt;BR&gt;1       2007   3        1            1         2&lt;BR&gt;&lt;FONT style="BACKGROUND-COLOR: #dddd55"&gt;2       2007  NULL  NULL         2         4 &lt;BR&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT style="BACKGROUND-COLOR: #ff1111"&gt;3       2007  NULL   NULL        6         12&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;Вот такой вот набор данных надо получить. Но у меня выходит только по месяцам упарядочить, а чтобы после 3 месяцев(т.е. квартала) тоже сумма считалось и упорядочивалась как надо, вот это и не получается.&lt;/FONT&gt;</description><pubDate>Mon, 22 Jan 2007 06:54:46 GMT</pubDate><dc:creator>spinin</dc:creator></item><item><title>RE: Запрос на подсчет суммы</title><link>http://relib.com/forums/Topic909869-22-1.aspx</link><description>Испoльзуйте With Rollup oпрерaтoр при пoдсчёте суммы:&lt;/P&gt;&lt;P&gt;SELECT 2 as sort, Year(Дата) AS nYear, Month(Дата) AS  nMonth, квартал, sum(Число1), sum    (Число2)&lt;BR&gt;FROM othet&lt;BR&gt;GROUP BY  Year(Дата), Month(Дата), квартал With Rollup</description><pubDate>Fri, 19 Jan 2007 16:48:40 GMT</pubDate><dc:creator>MFisher</dc:creator></item><item><title>Запрос на подсчет суммы</title><link>http://relib.com/forums/Topic909869-22-1.aspx</link><description>Здравствуйте. Мне надо создать такой набор данных, в котором после кождого месяца должна считаться сумма и после каждого квартала тоже должно считаться сумма. У меня получается вот такой запрос:&lt;P&gt;SELECT 1 as sort, Year(dataprov) AS nYear, Month(dataprov) AS nMonth, Квартал, Число1,  Число2&lt;BR&gt;FROM othet&lt;BR&gt;UNION &lt;/P&gt;&lt;P&gt;SELECT 3 as sort, null, null, null, sum(Число1), sum(Число2)&lt;BR&gt;FROM othet&lt;BR&gt;UNION &lt;/P&gt;&lt;P&gt;SELECT 2 as sort, Year(Дата) AS nYear, Month(Дата) AS  nMonth, квартал, sum(Число1), sum    (Число2)&lt;BR&gt;FROM othet&lt;/P&gt;&lt;P&gt;GROUP BY  Year(Дата), Month(Дата), квартал&lt;BR&gt;ORDER BY  nYear, nMonth, квартал, sort  &lt;/P&gt;&lt;P&gt; Но почему то суммы считаются только за месяца, а за квартал не считаются.&lt;/P&gt;&lt;P&gt;Я пробывал вставлять в sort3 - переменную [квартал], тоже не идет.&lt;/P&gt;&lt;P&gt;Подскажите пожалуйста. Заранее спасибо.</description><pubDate>Fri, 19 Jan 2007 08:31:08 GMT</pubDate><dc:creator>spinin</dc:creator></item></channel></rss>