Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 UNION ALL, DISTINCT, SELECT  [new]
gomargo
Member

Откуда: Москва
Сообщений: 33
смотрите, пишу код
SELECT 
         ID_DEP, 
		sum(SUMMA_N) AS SUMMA_N 
            FROM TABLE1
             GROUP BY ID_DEP

             UNION ALL
           (SELECT
		
           ID_DEP,
		  sum (SUMMA_N) AS SUMMA_N
           from TABLE1
            GROUP BY 
	     ID_DEP)


Он мне выводит 10 ID_DEP и 10 SUMMA_N , и среди них два одинаковых ID_DEP, но с разными SUMMA_N
мне необходимо СЛОЖИТЬ SUMMA_N у одинаковых ID_DEP.

первый SELECT до UNION ALL выводит 9 записей (12345678!9!)
второй SELECT после UNION ALL выводит одну запись, например "9 - 1500рублей", вот мне надо эти 1500 прибавить к строке с ID_DEP = 9, у которой сумма, скажем 2000рублей, чтобы получить 9 - 3500 рублей, ну и естественно все другие записи, не зря же я UNION ALL делала.

не соображаю уже, подскажите, мозг OFF
28 май 15, 17:42    [17703036]     Ответить | Цитировать Сообщить модератору
 Re: UNION ALL, DISTINCT, SELECT  [new]
gomargo
Member

Откуда: Москва
Сообщений: 33
Сорян, опечаталась, TABLE2 во втором Select

 SELECT 
         ID_DEP, 
		sum(SUMMA_N) AS SUMMA_N 
            FROM TABLE1
             GROUP BY ID_DEP

             UNION ALL
           (SELECT
		
           ID_DEP,
		  sum (SUMMA_N) AS SUMMA_N
           from TABLE2
            GROUP BY 
	     ID_DEP)
28 май 15, 17:43    [17703053]     Ответить | Цитировать Сообщить модератору
 Re: UNION ALL, DISTINCT, SELECT  [new]
Akina
Member

Откуда: Зеленоград, Москва, Россия
Сообщений: 20600
Оберните эту хрень суммирующим запросом. Или свяжите их внешне как подзапросы и сложите.
28 май 15, 17:49    [17703101]     Ответить | Цитировать Сообщить модератору
 Re: UNION ALL, DISTINCT, SELECT  [new]
Basma4
Member

Откуда:
Сообщений: 124
gomargo,
UNION<>+
28 май 15, 17:50    [17703113]     Ответить | Цитировать Сообщить модератору
 Re: UNION ALL, DISTINCT, SELECT  [new]
gomargo
Member

Откуда: Москва
Сообщений: 33
Akina,
Мне вот и надо знать как "обернуть",скрестить грубо говоря вышеуказанный запрос с:

SELECT  (SELECT
		  sum (SUMMA_N) AS SUMMA_N
           from TABLE1
		   WHERE ID_DEP=9
            GROUP BY 
	     ID_DEP) + (SELECT
		  sum (SUMMA_N) AS SUMMA_N
           from TABLE2
		   WHERE ID_DEP=9
            GROUP BY 
	     ID_DEP)
28 май 15, 18:02    [17703182]     Ответить | Цитировать Сообщить модератору
 Re: UNION ALL, DISTINCT, SELECT  [new]
SQL2008
Member

Откуда: Москва
Сообщений: 4260
Навскидку
SELECT  sum (TT.SUMMA_N) AS SUMMA_N
           from  (
                       SELECT * FROM TABLE1
                       UNION ALL
                       SELECT * FROM TABLE2
                     ) TT
WHERE TT.ID_DEP=9
 
28 май 15, 18:14    [17703282]     Ответить | Цитировать Сообщить модератору
 Re: UNION ALL, DISTINCT, SELECT  [new]
Basma4
Member

Откуда:
Сообщений: 124
SELECT T.ID_DEP,sum(T.SUMMA_N) AS SUMMA_N
FROM (
SELECT ID_DEP, SUMMA_N
FROM TABLE1
UNION ALL
SELECT ID_DEP, SUMMA_N
FROM TABLE2) as T
GROUP BY T.ID_DEP
28 май 15, 18:17    [17703315]     Ответить | Цитировать Сообщить модератору
 Re: UNION ALL, DISTINCT, SELECT  [new]
gomargo
Member

Откуда: Москва
Сообщений: 33
SQL2008,

Сообщение 205, уровень 16, состояние 1, строка 1
Все запросы, объединенные с помощью операторов UNION, INTERSECT или EXCEPT, должны иметь одинаковое число выражений в целевых списках.
28 май 15, 18:44    [17703449]     Ответить | Цитировать Сообщить модератору
 Re: UNION ALL, DISTINCT, SELECT  [new]
gomargo
Member

Откуда: Москва
Сообщений: 33
SQL2008,

Сообщение 205, уровень 16, состояние 1, строка 1
Все запросы, объединенные с помощью операторов UNION, INTERSECT или EXCEPT, должны иметь одинаковое число выражений в целевых списках.
28 май 15, 18:45    [17703456]     Ответить | Цитировать Сообщить модератору
 Re: UNION ALL, DISTINCT, SELECT  [new]
Межповерховий Дрототяг
Member

Откуда: из деды
Сообщений: 3537
gomargo
SQL2008,

Сообщение 205, уровень 16, состояние 1, строка 1
Все запросы, объединенные с помощью операторов UNION, INTERSECT или EXCEPT, должны иметь одинаковое число выражений в целевых списках.


Вместо * список полей укажи.
28 май 15, 18:50    [17703476]     Ответить | Цитировать Сообщить модератору
 Re: UNION ALL, DISTINCT, SELECT  [new]
gomargo
Member

Откуда: Москва
Сообщений: 33
Basma4,

Вы супер, всё работает !!!!! Очень Вам благодарна!!!!!!!
28 май 15, 18:52    [17703479]     Ответить | Цитировать Сообщить модератору
 Re: UNION ALL, DISTINCT, SELECT  [new]
gomargo
Member

Откуда: Москва
Сообщений: 33
Межповерховий Дрототяг,

Спасибо :)
29 май 15, 11:37    [17705744]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить