27.12.2007 19:56
OlegON
 
Цитата:
SELECT createdat "дата", sum(decode(doctype,'CS',totalsum,'CR',-totalsum,0)) "выручка"
FROM smdocuments
WHERE doctype in ('CR','CS')
AND createdat BETWEEN SYSDATE - 120 AND SYSDATE
GROUP BY createdat
ORDER BY 1
Хочу посчитать выручку по датам, правильно?
27.12.2007 19:58
OlegON
 
Цитата:
select * from (SELECT "магазин", sum("выручка")
FROM (SELECT (SELECT NAME
FROM smstorelocations
WHERE ID =
DECODE (doctype,
'CS', locationfrom,
'CR', locationto,
0
)) "магазин",
(DECODE (doctype, 'CS', totalsum, 'CR', -totalsum, 0)
) "выручка"
FROM smdocuments
WHERE doctype IN ('CR', 'CS')
AND createdat BETWEEN TRUNC (SYSDATE, 'MONTH') AND SYSDATE)
GROUP BY "магазин"
ORDER BY 2 DESC) where rownum<11
пытаюсь понять, где я тут накосячил (выборка десятки лидеров по магазинам с начала месяца)... Голова уже не соображает.
28.12.2007 03:33
isi
 
А что тебя не устроило в тоем запросе, вроде все правильно
28.12.2007 07:05
Mtirt
 
Олег, похоже на правду.
28.12.2007 10:13
OlegON
 
Спасибо, просто вчера уже голова не варила, написал правильно, а проверил неправильно :) Разгребусь немножко - выкину в программы еще пару утилиток.
Часовой пояс GMT +3, время: 11:27.

Форум на базе vBulletin®
Copyright © Jelsoft Enterprises Ltd.
В случае заимствования информации гипертекстовая индексируемая ссылка на Форум обязательна.