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

Вниз

Группировка по дням недели   Найти похожие ветки 

 
Koks   (2002-05-16 10:55) [0]

Уважаемые мастера ! Подскажите...
Подключаюсь к базе Access2000 через ADO. Б вазе есть таблица:
ID Color Claruty Size Price Date
---------------------------------------
Key Int Int Int Float Date

Мне нужно составить аггрегирующий запрос по неделям. (Чтоб с начала года 1,2,3,4......)
Как из даты выципит эту неделю....


 
Johnmen   (2002-05-16 11:25) [1]

Придется извращаться, типа используя UNION...


 
Lusha   (2002-05-16 11:51) [2]

Посмотрите имеется ли в Access функция форматирования даты или функция возвращающая Week of Year...
Если Access поддерживает выражения в предложении GROUP BY, то Вы спасены...


 
koks   (2002-05-16 16:02) [3]

Week of Yer в Access 2000 нет... :(

А как ее рассчитать-то. Положим, при вводе для каждой записи будет вычисляться WeekOfYear(Date).

Только вот как написать функцию WeekOfDay на Delphi....

2 Johnmen.... а это как типа....


 
Lusha   (2002-05-16 16:36) [4]

>koks © (16.05.02 16:02)
Только вот как написать функцию WeekOfDay на Delphi....

Не надо ее писать... Функция DayOfWeek в delphi присутствует...



 
Johnmen   (2002-05-16 16:45) [5]

>Lusha © (16.05.02 16:36)
Автору, как я понял, надо получить номер недели в году по дате...


 
Lusha   (2002-05-16 16:48) [6]

>Johnmen © (16.05.02 16:45)
Я это понимаю... Просто для этого ему понадобится функция DayOfWeek, а он ее писать собрался...


 
Lusha   (2002-05-16 17:13) [7]

>koks © (16.05.02 16:02)
Открыл справку по Access и нашел там Format для представления дат... Одна из литер отвечает именно за номер недели... Вот только саму функцию преобразования я не нашел (Справка - полный отстой)...


 
koks   (2002-05-17 10:09) [8]

2 Lusha Открыл справку по Access и нашел там Format для представления дат... Одна из литер отвечает именно за номер недели... Вот только саму функцию преобразования я не нашел (Справка - полный отстой)...

Спасибо - попробую поколдовать... по-моему здесь есть шанс.
По поводу справки по Aссess - ты еще попробуй найти что-нибудь через помощника.

2 Lusha Я это понимаю... Просто для этого ему понадобится функция DayOfWeek, а он ее писать собрался...

Вот именно - DayOfWeek есть. А мне надо WeekOfYear...
Вот если бы ее можно было бы написать - было бы гораздол проще.


 
Lusha   (2002-05-17 11:02) [9]

Лови... Результат не гарантирован, но вроде что то выдает... :)

function WeekOfYear(ADate : TDateTime) : Integer;
var AYear, AMonth, ADay : Word;
Year1stDate : TDateTime;
begin
DecodeDate(ADate, AYear, AMonth, ADay);
Year1stDate := EncodeDate(AYear, 1, 1);
Result := 7 - DayOfWeek(Year1stDate);
Result := Trunc(ADate) - Trunc(Year1stDate) + 1 - Result;
if (Result mod 7) = 0 then Result := Result div 7 + 1
else Result := Result div 7 + 2;
end;



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

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

Наверх





Память: 0.46 MB
Время: 0.005 c
3-30668
wHammer
2002-05-16 16:20
2002.06.10
Сохранение готового отчета QR в формате Excel


1-30772
QWest
2002-05-30 16:55
2002.06.10
Очень простенький вопрос...


1-30813
Xristos
2002-05-31 10:06
2002.06.10
НАРОД!!! Как это можно сделать???...


14-31008
BigBadMutuh
2002-05-06 22:41
2002.06.10
Опять проблемы...


6-30962
Фредди
2002-03-28 22:20
2002.06.10
Кто нибудь писал веб-сервер на Дельфи?





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский