Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];

Вниз

Выборка по полю TDateTime FireBird 1.5   Найти похожие ветки 

 
S@shka ©   (2004-04-21 16:23) [0]

Есть таблица с записями вида...
MyDate                     Value
----------------------------------------
01.04.2004 11:00:15         1
01.04.2004 12:10:45         2
01.04.2004 13:00:10         2
01.04.2004 14:50:35         3
02.04.2004 01:00:15         1
02.04.2004 02:00:15         1
и т.д вообщем
Надо сделать выборку чтобы подсчитать SUM(Value) за день или месяц
Чтобы результат был....
01.04.2004  8
02.04.2004  2 и. т.д
или
04.2004     10
Как это сделать ??? Можно ли в запросе или надо как-то процедуру писать?


 
Johnmen ©   (2004-04-21 16:41) [1]

SELECT
 EXTRACT(DAY FROM MyDate)||"."||
 EXTRACT(MONTH FROM MyDate)||"."||
 EXTRACT(YEAR FROM MyDate) AS MyDateA,
 SUM(Value) AS MySum
FROM Table
GROUP BY 1


Кстати, какой диалект ?


 
S@shka ©   (2004-04-27 14:06) [2]

Диалект 3.
Эта выборка работает но
оператор GROUP By осуществляет сортировку по дням
т.е.
в итоге видим
23.4.2004 15
24.4.2004 10
26.3.2004 1
27.3.2004 2

причем именно в формате d.m.yyyy

а как по дате чтобы было отсортировано?
т.е.
26.3.2004 1
27.3.2004 2
23.4.2004 15
24.4.2004 10


 
Johnmen ©   (2004-04-27 14:09) [3]

>оператор GROUP By осуществляет сортировку

:)))))) никогда он этого не делал !

ORDER BY 2


 
S@shka ©   (2004-04-27 14:12) [4]

Хе-хе-хе
есно такое не катит :)


 
Johnmen ©   (2004-04-27 14:14) [5]

>Хе-хе-хе
>есно такое не катит :)

Плохо лыжи смазал...
:)))


 
Jack128 ©   (2004-04-27 14:21) [6]


> причем именно в формате d.m.yyyy


SELECT
cast(EXTRACT(MONTH FROM MyDate)||"/"||
EXTRACT(DAY FROM MyDate)||"/"||
EXTRACT(YEAR FROM MyDate) as date) AS MyDateA,
SUM(Value) AS MySum
FROM Table
GROUP BY 1

вот тебе в формате даты, сам решай в каком формате эту дату представлять..


 
S@shka ©   (2004-04-27 14:31) [7]

А серьезно?
Хорошо. На врал - не сортирует GRoup By может быть (а мож и сортирует :))
Но ...
факт остается фактом мне то нужно отсортированные данные получить.


 
S@shka ©   (2004-04-27 14:33) [8]

>> Jack128
Большое спасибо


 
Соловьев ©   (2004-04-27 14:37) [9]


> S@shka ©   (27.04.04 14:33) [8]

Такие вещи лучше на клиенте делать.


 
Johnmen ©   (2004-04-27 14:39) [10]

>факт остается фактом мне то нужно отсортированные данные получить.

Ещё раз. GROUP BY никакого отношения к сортировке не имеет, в отличие от ORDER BY (см.англо-русский словарь :))

ORDER BY 1


 
S@shka ©   (2004-04-27 15:30) [11]

>> Johnmen
хех это то я знаю.
однако факт остается фактом
пример >> Jack128 работает корректно


 
Johnmen ©   (2004-04-27 15:40) [12]

>S@shka ©   (27.04.04 15:30) [11]
>пример >> Jack128 работает корректно

Это случайность, обусловленная твоими данными.
Да чем он отличается от [1] ?

Если у тебя 3 диалект, то можно проще
SELECT CAST(MyDate AS DATE) AS MyDateA, SUM(Value) AS MySum
FROM Table
GROUP BY 1
ORDER BY 1


 
Jack128 ©   (2004-04-27 15:44) [13]


> Jack128 работает корректно
очень приятно ;-) , но это был пример на твое замечание по поводу представления даты в определенном формате, к сортировке он не имеет никакого отнашения :-))



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

Форум: "Базы";
Текущий архив: 2004.05.23;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.035 c
1-1083745547
KPP
2004-05-05 12:25
2004.05.23
ZLib - пример использования


3-1083294873
kvit
2004-04-30 07:14
2004.05.23
Транзакция в АДО?


3-1083314992
Evyshka
2004-04-30 12:49
2004.05.23
Отображение в одной колонке


8-1078899334
Галинка
2004-03-10 09:15
2004.05.23
Как повернуть картинку на произвольный угол?


1-1083910553
Olsher
2004-05-07 10:15
2004.05.23
Выполнение действий во время прокрутки текста





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский