Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как посчитать возраст? / 25 сообщений из 38, страница 1 из 2
17.11.2005, 13:15:44
    #33383954
Zmiy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
Есть ли какая-нибудь фунция для реализации подсчета возраста? То есть отнимаем от системного времени или заданного дату рождения в формате date и получаем сколько дней к примеру или месяцев и дней?
...
Рейтинг: 0 / 0
17.11.2005, 13:18:00
    #33383957
Sxak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
ZmiyЕсть ли какая-нибудь фунция для реализации подсчета возраста? То есть отнимаем от системного времени или заданного дату рождения в формате date и получаем сколько дней к примеру или месяцев и дней?Ну дак ты сам все сказал.. отнимай и получай число дней
...
Рейтинг: 0 / 0
17.11.2005, 13:19:33
    #33383961
Zmiy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
то есть если я отниму от одной даты другую то получу число дней?
...
Рейтинг: 0 / 0
17.11.2005, 13:20:40
    #33383964
Sxak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
Zmiyто есть если я отниму от одной даты другую то получу число дней?А попробовать и проверить?
select :date1-:date2 from dual
подбирай сам даты и убедись
...
Рейтинг: 0 / 0
17.11.2005, 13:21:40
    #33383967
Sxak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
(у этого есть полу-глюки но ты на них вряд ли нарвешься....)
...
Рейтинг: 0 / 0
17.11.2005, 13:22:23
    #33383969
juks@gala.net
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
SxakА попробовать и проверить?
+1
И в RTFM заглянуть
...
Рейтинг: 0 / 0
17.11.2005, 13:24:12
    #33383971
M_IV
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
Posmotri link
...
Рейтинг: 0 / 0
17.11.2005, 13:33:46
    #33384004
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
Zmiyто есть если я отниму от одной даты другую то получу число дней?RTFM Date Arithmetic (FAQ)
Перед тем, как начинать "программировать" надо ознакомиться с основной документацией. Меньше глупых вопросов будешь задавать.
...
Рейтинг: 0 / 0
17.11.2005, 13:37:13
    #33384012
Sxak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
Sxak(у этого есть полу-глюки но ты на них вряд ли нарвешься....)
Кстати насчет етого глюка...
select to_date('01031500','ddmmyyyy')-1
from dual
Никто тут у себя ничего старнного не замечает?
это глюк оракла или пиелсиквел девелопера?
...
Рейтинг: 0 / 0
17.11.2005, 13:39:20
    #33384016
Sxak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
Sxak Sxak(у этого есть полу-глюки но ты на них вряд ли нарвешься....)
Кстати насчет етого глюка...
select to_date('01031500','ddmmyyyy')-1
from dual
Никто тут у себя ничего старнного не замечает?
это глюк оракла или пиелсиквел девелопера?
Навигатор вообще ошибку говорит но свою внутреннюю...
когда-то давно была идея посмотреть что будет есл вычислить дату которая отсутствует в григор календаре, есть в юлианском, но до появления григор календаря в Европе... Отсюда и такой рпимер
...
Рейтинг: 0 / 0
17.11.2005, 13:59:37
    #33384100
juks@gala.net
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
Sxak Sxak(у этого есть полу-глюки но ты на них вряд ли нарвешься....)
Кстати насчет етого глюка...
select to_date('01031500','ddmmyyyy')-1
from dual
Никто тут у себя ничего старнного не замечает?
это глюк оракла или пиелсиквел девелопера?
Оракла вроде посчитал ....
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
SQL> select to_date('01-03-1500','dd-mm-yyyy')- 1  from dual
   2   /

TO_DATE(' 01 - 03 - 1500 
-------------------
 29 . 02 . 1500   00 : 00 : 00 

SQL> select  1500 / 12  from dual
   2   /

    1500 / 12 
----------
        125 

Девелопер таки жжот
...
Рейтинг: 0 / 0
17.11.2005, 14:06:30
    #33384125
Vint
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
Не я конечно все понимаю. но видимо редко вам это приходиться делать как то видел реализацию через подсчет дней, народ оччень удивлялся скорости работы функции на тысяче людей, долго ждать приходилось однако.
Видимо все забыли что есть и высокосные годы а считать их ручками очень тяжко, лучше используйте функцию month_beetwen, и получите месяцы между двумя датами, а для вычисления возраста остаеться разделить на 12 :)
...
Рейтинг: 0 / 0
17.11.2005, 14:08:22
    #33384134
whoami
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
SQL> alter session set nls_date_format='DD-MM-YYYY';

Session altered.

SQL> select to_date('01031500','ddmmyyyy')-1 from dual;

TO_DATE('0
----------
29-02-1500


или я чего-то не догнал?
...
Рейтинг: 0 / 0
17.11.2005, 14:09:31
    #33384139
Sxak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
whoamiили я чего-то не догнал?Все то же самое на в SQL Navigatore попробуй
...
Рейтинг: 0 / 0
17.11.2005, 14:09:47
    #33384143
zirex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
из девелопера
Код: plaintext
1.
2.
   	TO_DATE('01031500','DDMMYYYY')
 1 	 00 . 00 . 0000 
...
Рейтинг: 0 / 0
17.11.2005, 14:11:58
    #33384151
zirex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
из плюса
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
SQL> select to_date('01031500','ddmmyyyy') -  1  from dual
   2   /

TO_DATE('
---------
 29 -FEB- 00 

SQL> 

выходит, что глюк девелопера :)
...
Рейтинг: 0 / 0
17.11.2005, 14:16:23
    #33384164
AndrK
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
Да народ всякими сторонними тулзами пользуется
а не sqlplus, а там все как-то странно получается,
например в TOAD попробуйте поменять значение в поле Number(16) где
все цифры заполнены, результат интересный получается
...
Рейтинг: 0 / 0
17.11.2005, 16:03:46
    #33384597
Zmiy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
Все авно не пойму, вот какой возраст к примеру если дата рождения 10.11.1990 на момент 12.12.2004? Как посчитать кол-во дней-то????
...
Рейтинг: 0 / 0
17.11.2005, 16:06:48
    #33384611
Vadim_Maximov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
Мде...
Дата2 - Дата1 = кол-во дней между датами...
...
Рейтинг: 0 / 0
17.11.2005, 16:08:40
    #33384618
Zmiy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
имелось в виду в формате кол-во лет, месяцев и дней.
Не буду ж я потом полученные дни делить на 365 и остаток на 30.
...
Рейтинг: 0 / 0
17.11.2005, 16:12:50
    #33384635
Vadim_Maximov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
Код: plaintext
1.
2.
3.
select extract(year from sysdate),
       extract(month from sysdate),
       extract(day from sysdate)
from   dual
...
Рейтинг: 0 / 0
17.11.2005, 16:16:46
    #33384650
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
ZmiyВсе авно не пойму, вот какой возраст к примеру если дата рождения 10.11.1990 на момент 12.12.2004? Как посчитать кол-во дней-то????Так, как принято в вашей информационной системе. А как это принято у вас , никто из нас не скажет. Скажет только тот, кто этот формат выдумал.

Блин, понаплодил тем и нихера в них не хочешь ни читать, ни думать. Заколебал.
...
Рейтинг: 0 / 0
17.11.2005, 16:18:23
    #33384655
zirex
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
рискну предложить :)
Код: plaintext
1.
2.
3.
4.
5.
6.
SELECT TRUNC(MONTHS_BETWEEN(NOW, BORN) /  12 ) YEARS
      ,TRUNC(MONTHS_BETWEEN(NOW, BORN)) MONTHS
      ,NOW - BORN DAYS
FROM (SELECT TO_DATE('10.11.1990', 'DD.MM.YYYY') BORN
            ,TO_DATE('12.12.2004', 'DD.MM.YYYY') NOW
      FROM DUAL)
...
Рейтинг: 0 / 0
17.11.2005, 16:18:40
    #33384657
Denis Popov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
Полные года и месяцы можно:
Код: plaintext
1.
2.
select (to_date('12.12.2004', 'dd.mm.yyyy') - to_date('01.11.1990', 'dd.mm.yyyy')) year to month
from dual;

Со днями напряг, надо дальше разбираться.
...
Рейтинг: 0 / 0
17.11.2005, 16:29:58
    #33384699
Zmiy
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как посчитать возраст?
как в нашей системе - я сам не знаю)а читаю уж полдня.
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Как посчитать возраст? / 25 сообщений из 38, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]