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

Откуда: From Russia
Сообщений: 146
Всем привет,
Есть таблица Orders с полями
CusomerId, Price, Date - соответственно ИДшник покупателя, стоимость заказа, дата.
Примерные данные:
CusomerId - Date - Price
1 - 01.06.2011 - 100
1 - 01.06.2011 - 10
1 - 01.06.2011 - 10
1 - 01.06.2011 - 20
1 - 02.06.2011 - 20
....

Нужно построить график, показывающий активность покупателя с течением времени, т.е. нужно получить:
CusomerId - Date - Price
1 - 01.06.2011 - 100
1 - 02.06.2011 - 150
1 - 03.06.2011 - 90
1 - 04.06.2011 - 110
....
2 - 03.06.2011 - 210
....

Т.е. тут нужна а) группировка по CusomerId и б) какая-то хитрая группировка по дате.
8 июн 11, 16:48    [10784520]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по дате  [new]
ё
Guest
и как, из этого
Kudep
CusomerId - Date - Price
1 - 01.06.2011 - 100
1 - 01.06.2011 - 10
1 - 01.06.2011 - 10
1 - 01.06.2011 - 20

1 - 02.06.2011 - 20
.....

получено - это ?
Kudep
CusomerId - Date - Price
1 - 01.06.2011 - 100
1 - 02.06.2011 - 150
1 - 03.06.2011 - 90
1 - 04.06.2011 - 110

кто-нибудь, кроме вас - знает ?
8 июн 11, 16:55    [10784593]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по дате  [new]
baracs
Member

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

А в чем хитрость-то? Максимальная соимость заказа за сутки что-ли нужна?
8 июн 11, 16:57    [10784618]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по дате  [new]
Strangers
Member [заблокирован]

Откуда: Україна
Сообщений: 2613
как-то не вяжутся в условии исходные данные и результат
8 июн 11, 16:57    [10784626]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по дате  [new]
ё
Guest
baracs
Kudep,

А в чем хитрость-то? Максимальная соимость заказа за сутки что-ли нужна?

гм,
ну вообще - подходит....
но называть это "активность покупателя", имхо как-то - "смело" со стороны ТС ...
8 июн 11, 17:07    [10784706]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по дате  [new]
Strangers
Member [заблокирован]

Откуда: Україна
Сообщений: 2613
baracs
Kudep,

А в чем хитрость-то? Максимальная соимость заказа за сутки что-ли нужна?

А может первая покупка больше 50 р :)
8 июн 11, 17:13    [10784747]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по дате  [new]
baracs
Member

Откуда: Москва
Сообщений: 7217
ё
baracs
Kudep,

А в чем хитрость-то? Максимальная соимость заказа за сутки что-ли нужна?

гм,
ну вообще - подходит....
но называть это "активность покупателя", имхо как-то - "смело" со стороны ТС ...
Отсюда и вопрос.
8 июн 11, 17:14    [10784767]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по дате  [new]
Kudep
Member

Откуда: From Russia
Сообщений: 146
сори, входные и выходные данные все с потолка взял и цифры в исходной таблице и результате не сходятся.
Еще раз, смысл в том нужно построить график, где по оси Y будет общая стоимость заказов, сделанных в определенный промежуток времени, а по оси X соответственно дата.
Чтобы такой график построить мне нужно 10-15 точек вида {Общая стоимость заказов, Дата}
Например,
Покупатель Пупкин потратил
100 рублей 1.05.2011
110 рублей 2.05.2011
210 рублей 3.05.2011
и т.д.

Первым делом здесь наверное стоит сгруппировать по покупателям, но что делать дальше?
8 июн 11, 17:37    [10785017]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по дате  [new]
ё
Guest
Kudep
Первым делом здесь наверное стоит сгруппировать по покупателям, но что делать дальше?

вторым - по дате
и третьим - просуммировать "потратил"
8 июн 11, 17:39    [10785040]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по дате  [new]
Уленшпигель
Member

Откуда:
Сообщений: 115
вам надо просто просуммировать цены, а потом выбирать по нужному покупателю.
8 июн 11, 17:45    [10785098]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по дате  [new]
Kudep
Member

Откуда: From Russia
Сообщений: 146
Вот я сгруппировал по CustomerId:
select CustomerID, SUM(Price) as TotalPrice from dbo.Customers
where CustomerID in (5, 2, 1, 6) and Date > '05-01-2011' and Date < '05-31-2011'
group by CustomerID
Не пойму, как здесь одновременно группировать и по CustomerId и по дате??
8 июн 11, 18:16    [10785341]     Ответить | Цитировать Сообщить модератору
 Re: Группировка по дате  [new]
AceLEX
Member

Откуда:
Сообщений: 2
м... ?

select CustomerID, Date, SUM(Price) as TotalPrice 
from dbo.Customers
where CustomerID in (5, 2, 1, 6) and Date > '05-01-2011' and Date < '05-31-2011'
group by CustomerID, Date
8 июн 11, 18:33    [10785423]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить