Форум: "Базы";
Текущий архив: 2010.01.10;
Скачать: [xml.tar.bz2];
Внизкак в Firebird узнать количество дней в месяце? Найти похожие ветки
← →
zorik © (2009-01-24 12:02) [0]Приходят идеи перебора (28,29,30,31) или как-то от следующего месяца отнять один день...
← →
zorik © (2009-01-24 14:20) [1]решил с помощью ХП
m = (extract (month from zdate));
y = (extract (year from zdate));
m = m + 1;
if (m > 12) then
begin
m = 1;
y = y1 + 1;
end
date2 = cast("1."||m||"."||y as date) - 1;
← →
Виталий Панасенко (2009-01-24 14:21) [2]Вообще-то, формат даты -ГГГГ-ММ-ДД
← →
zorik © (2009-01-24 14:28) [3]http://delphimaster.net/view/3-1230191328/
← →
Виталий Панасенко (2009-01-24 14:40) [4]
> zorik © (24.01.09 14:28) [3]
И?
← →
zorik © (2009-01-24 14:54) [5]Работает двумя способами
← →
Johnmen © (2009-01-24 19:41) [6]из фака:
<количество дней в месяце даты YourDate> =
==========================================
EXTRACT(DAY FROM
CAST("01."||EXTRACT(MONTH FROM TmpDate)||"."||
EXTRACT(YEAR FROM TmpDate) AS DATE) - 1);
где
TmpDate =
CAST("01."||EXTRACT(MONTH FROM YourDate)||"."||EXTRACT(YEAR FROM YourDate) AS DATE) + 32;
соответственно подумав, можно получить с -1 к количеству дней в месяце.
← →
makz (2009-01-25 15:17) [7]в fb2.1 есть dateadd, c ним проще.
← →
Труп Васи Доброго © (2009-01-26 16:54) [8]если FB 2.1, то проще так
select DATEDIFF(day,cast("01.02.2008" as date), cast("01.03.2008" as date)) from rdb$database;
автоматически учитывает високосность года
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2010.01.10;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.005 c