Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.01;
Скачать: CL | DM;

Вниз

запрос к таблице   Найти похожие ветки 

 
Bob ©   (2003-08-11 11:59) [0]

Хелп, плиз. Есть таблица следующего вида
Date0 - дата получения заказа
Sum0 - сумма заказа
Date1 - дата выполнения заказа
Sum1 - сумма выполненного заказа
Необходимо сделать выборку за период, в которую входит (по датам) сумма принятых и сумма выполненных заказов


 
Bob ©   (2003-08-11 12:25) [1]

Уточнение вопроса:
результат в формате
дата, сумма принятых заказов, сумма выполненных заказов


 
Hawk2   (2003-08-11 12:27) [2]

Общая сума принятых и выполненых заказов или как?


 
HSolo ©   (2003-08-11 12:31) [3]

Какая дата - получения заказа или выполнения?


 
Anatoly Podgoretsky ©   (2003-08-11 12:38) [4]

Пока ты не опишешь нормально задачу, тебе будет тяжело помочь, ответы будут вкривь и вкось, говорил же в чате, опиши нормально и примером данных и рузультата, который хочешь получить или просто своими слова опиши.


 
Hawk2   (2003-08-11 12:42) [5]

SELECT Date0, SUM(Sum0)
FFOM YourTableName
GROUP BY Date0 общая сума заказов по каждому дню. Аналогично будет общая сума выполненых заказов по каждому дню (только поля Date1, Sum1).


 
Bob ©   (2003-08-11 12:47) [6]

таблица к вопросу
date0 Sum0 date1 sum1
01/08/03 100.00 05/08/03 150.00
01/08/03 50.00 03/08/03 50.00
03/08/03 200.00 07/08/03 190.00
02/08/03 185.00 05/08/03 185.00
05/08/03 120.00
результат
за период с 01/08/03 по 05/08/03
дата принято выполнено
01/08/03 150.00
02/08/03 185.00
03/08/03 200.00 50.00
05/08/03 120.00 335.00


 
Anatoly Podgoretsky ©   (2003-08-11 12:58) [7]

Примерно так
SELECT DateN,SUM(Sum0).SUM(Sum1) from table group by DateN order by DateN where DateN between интервал


 
Hawk2 ©   (2003-08-11 13:00) [8]

Ну тогда добавь
SELECT Date0, SUM(Sum0)
FFOM YourTableName
WHERE (Date0<FirstDate) AND (Date0>SecondDate)
GROUP BY Date0


 
HSolo ©   (2003-08-11 13:29) [9]

То, что Вы хотите, одним запросом, боюсь, не сделать

Вариант 1:

делаем врем.таблицу temp_table: fdate, sum0, sum1

1-й запрос:
insert into temp_table(fdate, sum0, sum1)
select date0, sum(sum0), 0 from YourTable
where date0 between интервал
group by date0

2-й запрос:
insert into temp_table(fdate, sum0, sum1)
select date1, 0, sum(sum1) from YourTable
where date1 between интервал
group by date1

3-й запрос:
select fdate, sum(sum0), sum(sum1)
from temp_table
group by fdate
order by fdate

Вариант 2: 1-й и 2-й запросы объединить в union; возможно, потребуется cast

Вариант 3:
если возможно - пересмотреть структуру таблицы, сделать что-то вроде:
fdate - дата
foper - вид операции (принято / выполнено)
fsum - сумма
Из такой таблицы то, что Вам надо, получится одним запросом (с union)



Страницы: 1 вся ветка

Текущий архив: 2003.09.01;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.037 c
1-1505
Злодей
2003-08-17 20:27
2003.09.01
Пуск


9-1269
Mef88
2003-02-28 17:10
2003.09.01
Навороченная прозрачность


3-1329
Fants
2003-08-11 09:47
2003.09.01
Документация по FIBPlus


3-1287
Skywalker
2003-08-11 10:43
2003.09.01
Специальные знаки


14-1666
Igor__
2003-08-12 11:43
2003.09.01
WebBrowser