Форум: "Базы";
Текущий архив: 2003.11.03;
Скачать: [xml.tar.bz2];
Внизgroup by Найти похожие ветки
← →
rosl (2003-10-12 11:16) [0]народ
такой вопрос
нужно сгруппировать данные по месяцам
a b
10 10.01.2003
20 11.01.2003
10 10.02.2003
5 01.03.2003
что-то типа
select sum(a), b
from bd\main.dbf
group by b
чтоб получилось (что-то в этом роде)
30 ##.01.2003
10 ##.02.2003
5 ##.03.2003
← →
Александр Иванов (2003-10-12 12:12) [1]Скорее всего придется хранить для группировки отдельно номер дня, номер месяца и номер года, тогда будет намного проще группировать по месяцу, году.
← →
Nikolay M. (2003-10-12 12:18) [2]В фоксе есть функции для извлечения месяца/года? Если да, тогда можно попробовать так
SELECT SUM(a), CASE(ExtractMonth(b) AS VARCHAR(2)) + "." + CASE(ExtractYEAR(b) AS VARCHAR(4))
FROM table_name
GROUP BY CASE(ExtractMonth(b) AS VARCHAR(2)) + "." + CASE(ExtractYEAR(b) AS VARCHAR(4))
← →
Dionys (2003-10-12 12:21) [3]
SELECT SUM(a), SUBSTRING(b FROM 4 FOR 7) AS c
FROM "bd\main.dbf"
GROUP BY c
← →
Johnmen (2003-10-13 09:43) [4]>Dionys © (12.10.03 12:21)
Ты хочешь сказать, что этот запрос работает ???
← →
Dionys (2003-10-13 16:30) [5]> Johnmen © (13.10.03 09:43) [4]
нет... не работает - ошибся... чесно говоря не вижу способа сделать это менее чем двумя запросами при такой стуктуре данных...
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2003.11.03;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.01 c