Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как использовать SUM и GROUP BY? / 8 сообщений из 8, страница 1 из 1
14.12.2018, 16:58
    #39748032
sc2r2bey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM и GROUP BY?
Есть запрос:
Код: sql
1.
2.
3.
4.
SELECT
SUM(Column)
FROM Table
GROUP BY Column2


Если сделать без GROUP BY он выводит общую сумму всех колонок, но есть колонки "задвоенные" и он выводит весь список уникальных полей, а мне нужна общая сумма с учетом уникальности
...
Рейтинг: 0 / 0
14.12.2018, 17:01
    #39748033
sc2r2bey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM и GROUP BY?
DISTINCTразобрался
...
Рейтинг: 0 / 0
14.12.2018, 17:23
    #39748048
sc2r2bey
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM и GROUP BY?
Не помогло
он теряет одну запись (( вопрос открыт
...
Рейтинг: 0 / 0
14.12.2018, 17:35
    #39748060
Владислав Колосов
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM и GROUP BY?
sc2r2bey,

с чего бы группировка что-то теряла?
...
Рейтинг: 0 / 0
14.12.2018, 17:36
    #39748062
londinium
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM и GROUP BY?
sc2r2bey,
давайте начнем с начала.
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
WITH CTE (ID,AMOUNT)
AS
(
  SELECT 1 AS ID, 200 AS AMOUNT
    UNION ALL
  SELECT 1 AS ID,500 AS AMOUNT
   UNION ALL
 SELECT 2 AS ID,100 AS AMOUNT
  UNION ALL
 SELECT 5 AS ID, 700 AS AMOUNT
)


что надо получить и не потерять?
...
Рейтинг: 0 / 0
14.12.2018, 20:48
    #39748172
PizzaPizza
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM и GROUP BY?
sc2r2beyЕсть запрос:
Код: sql
1.
2.
3.
4.
SELECT
SUM(Column)
FROM Table
GROUP BY Column2


Если сделать без GROUP BY он выводит общую сумму всех колонок, но есть колонки "задвоенные" и он выводит весь список уникальных полей, а мне нужна общая сумма с учетом уникальности

Я вот лично не понял что вы пытаетесь сделать ("задвоенные", "сумму колонок") и есть ощущение, что вы тоже не сформулировали для себя задачу.

Группировка это правило объединения строк/записей . Вы объединяете ваши строки в группы с одинаковым значением Column2. Дальше вопрос того, что вы хотите выбрать из этого объединения. Судя по sum вас интересует сумма значений каких то записей колонки column. Так как у вас указано правило группировки, то вы получаете сумму значений колонки в каждой индивидуальной группе - сумму column для строк у которых column2 одинаковый.
...
Рейтинг: 0 / 0
14.12.2018, 22:30
    #39748224
Mind
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM и GROUP BY?
sc2r2beyа мне нужна общая сумма с учетом уникальностиПример данных и что получить надо?
...
Рейтинг: 0 / 0
17.12.2018, 13:55
    #39748927
a_voronin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как использовать SUM и GROUP BY?
sc2r2bey,

Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
WITH CTE (ID,AMOUNT)
AS
(
	SELECT 1 AS ID, 200 AS AMOUNT
		UNION ALL
	SELECT 1 AS ID,500 AS AMOUNT
		UNION ALL
	SELECT 2 AS ID,100 AS AMOUNT
		UNION ALL
	SELECT 5 AS ID, 700 AS AMOUNT
),
CTE2 AS
(
	SELECT TOP 1 WITH TIES * 
	FROM CTE 
	ORDER BY ROW_NUMBER() OVER (PARTITION BY ID ORDER BY (SELECT NULL)) -- или PARTITION BY ID, AMOUNT ???
)
SELECT SUM(AMOUNT), ID
FROM CTE2
GROUP BY ID 
...
Рейтинг: 0 / 0
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как использовать SUM и GROUP BY? / 8 сообщений из 8, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]