|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
04.11.2009, 14:49 | #1 |
Регистрация: 04.11.2009
Сообщений: 7
|
Выборка сумм за сутки и период
Есть таблица:
- дата продажи - изделие - цвет изделия - стоимость За сутки может быть несколько одинаковых записей! Помогите создать SQL запрос для выборки в виде: - изделие - цвет изделия - стоимость проданных изделий определенного цвета за указанную дату - стоимость проданных изделий определенного цвета с начала месяца. Спасибо. |
04.11.2009, 15:37 | #2 |
*
Старожил
Регистрация: 22.11.2006
Сообщений: 9,201
|
А поискать по форуму - не судьба?
http://www.programmersforum.ru/showt...E5%F0%E8%EE%E4 http://www.programmersforum.ru/showt...E5%F0%E8%EE%E4 Еще? Или может самостоятельно введете в строку поиска слово "период" и поищете остальное в разделе "SQL" ? |
05.11.2009, 09:17 | #3 |
Регистрация: 04.11.2009
Сообщений: 7
|
>А поискать по форуму - не судьба?
Искал. Пока, действительно, не судьба. >http://www.programmersforum.ru/showt...E5%F0%E8%EE%E4 >http://www.programmersforum.ru/showt...E5%F0%E8%EE%E4 Обе ссылки - мимо кассы. Первая: простое суммирование за период, вторая - более сложное суммирование, опять же за период. >Еще? Или может самостоятельно введете в строку поиска ?>слово "период" и поищете остальное в разделе "SQL" ? Мне не нужно за "период". Мне нужно за "два периода" _одним_запросом_. Похожим на этот, но работающий: SELECT t1.name, t1.color, (SELECT SUM(t2.price) FROM table t2 WHERE t2.date='09.11.25' GROUP BY t2.name, t2.color), (SELECT SUM(t1.price) FROM table t1 WHERE t1.date>='09.11.01' AND t1.date<='09.11.25' GROUP BY t1.name, t1.color), FROM table t1, table t2 WHERE t2.name(+)=t1.name AND t2.color(+)=t1.color |
05.11.2009, 09:41 | #4 |
SQL-коддинг
Участник клуба
Регистрация: 16.01.2009
Сообщений: 1,192
|
ну и делай общий запрос с группировкой по изделие, цвет изделия
и подзапрос в нем же на нахождение стоимости проданных изделий определенного цвета с начала месяца З.Ы.: субд/версия? |
05.11.2009, 10:14 | #5 |
Регистрация: 04.11.2009
Сообщений: 7
|
>З.Ы.: субд/версия?
Oracle 7.1.6.2.0 Уточнение. Исходные данные в таблице: date, name, color, price Результат должен получиться в виде: name color sum(price) за сегодня sum(price) за месяц ------ ----- --------------------- -------------------- мячик желтый 0.00 25.50 кубик желтый 15.25 45.75 кубик зеленый 0.00 30.50 и т.д. |
05.11.2009, 12:07 | #6 |
SQL-коддинг
Участник клуба
Регистрация: 16.01.2009
Сообщений: 1,192
|
кагтотаг
Код:
|
05.11.2009, 12:38 | #7 |
Регистрация: 04.11.2009
Сообщений: 7
|
Грязно ругается на вложенный select:
ORA-00936: missing expression |
05.11.2009, 13:04 | #8 |
SQL-коддинг
Участник клуба
Регистрация: 16.01.2009
Сообщений: 1,192
|
ничего такого специфического для 7ки я не юзал
так что просто проверь все именования полей и таблиц - чтобы были реальные если чота непонятно, то комменть текст запроса построчно/поблочно чтобы общий запрос выполнялся и смотри что он там делает |
05.11.2009, 13:35 | #9 |
Регистрация: 04.11.2009
Сообщений: 7
|
Спасибо. Все понятно. Я выше приводил похожий запрос. Но каждый select отдельно работает, а во вложенном виде, ругается.
|
05.11.2009, 14:21 | #10 |
SQL-коддинг
Участник клуба
Регистрация: 16.01.2009
Сообщений: 1,192
|
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Период дроби! | prosport91 | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 09.06.2009 15:57 |
Период дроби | Магистраль | Помощь студентам | 7 | 06.04.2009 09:11 |