powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Точность поля с типом Date
25 сообщений из 41, страница 1 из 2
Точность поля с типом Date
    #39623327
kolyady
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день!

У меня есть поле в формате date в котором отображается дата в виде 30.03.18 , я с помощью to_char(поле, 'yyyy-mm-dd hh24:mi:ss') преобразовываю в нужный формат даты со временем.
И все бы ничего но мне надо более точное время тобиш не до секунд, а до сотых секунд или еще точнее (чем точнее тем лучше).
Вообщем каким образом можно отобразить наиболее точную дату?
Спасибо
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623330
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
timestamp
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623333
123йй
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор kolyadyВообщем каким образом можно отобразить наиболее точную дату?
отобразить можно как угодно.
например так : to_char(поле, 'yyyy-mm-dd hh24:mi:ss000000000000000000000000000')
а для хранения лучше использовать соотвествующий тип
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623361
kolyady
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
123йй,

Отобразить в плане чтоб сотые секунды не были всегда нулевыми (от такой точности проку никакого), сотые секунды нужны реальные а не чтобы добить строку.
Тип данной даты должен быть sring
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623368
123йй
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kolyady,

у типа DATE нет сотых секунды
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623383
kolyady
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
123йй,

Да нет есть сотые
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623384
Фотография Elic
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kolyadyДа нет есть сотыеЧудак, ты напрасно упорствуешь в невежестве.
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623387
dmdmdm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Прежде чем что-то утверждать, прочтите документацию и приведите test case.

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
Connected to Oracle Database 11g Release 11.2.0.1.0 
Connected as system@DMASLOV


SQL> select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss00') from dual;

select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss00') from dual

ORA-01821: формат даты не распознан

SQL> select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss') from dual;

TO_CHAR(SYSDATE,'YYYY-MM-DDHH2
------------------------------
2018-03-30 15:32:38

SQL> 

...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623400
merch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kolyadyДа нет есть сотые

тут не хватает еще "может быть".
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623401
kolyady
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dmdmdm,

Такой например
select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss.SSSSS') from dual;
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623402
XMLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kolyady,
Код: plsql
1.
2.
3.
4.
5.
6.
7.
select case when sysdate = sysdate then 'equal' else 'not equal' end equal
    ,  case when sysdate = (sysdate - 1/(24 * 60 * 60)) then 'equal' else 'not equal' end one_second
    ,  case when sysdate = (sysdate - 1/(24 * 60 * 60 + 1)) then 'equal' else 'not equal' end  less_then_second
    ,  case when sysdate = (sysdate - 1/(24 * 60 * 60 *60)) then 'equal' else 'not equal' end  too_small
 from dual

equal	not equal	not equal	equal
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623406
kolyady
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возможно я щзавелл в заблуждение, мне нужно получить более точную дату со временем (максимально точную), неважно сотые секунды это или другие варианты точности
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623408
Excession
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kolyady,

Зачем?
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623409
merch
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kolyadydmdmdm,

Такой например
select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss.SSSSS') from dual;



Код: plsql
1.
2.
3.
4.
select 
  to_char(to_date('01.06.2012 23:45:'||to_char(level, '00'), 'dd.mm.yyyy hh24:mi:ss'), 'yyyy-mm-dd hh24:mi:ss.SSSSS') 
from dual
connect by level < 11;



А тут какие сотые и тысячные?
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623410
kolyady
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XMLer,

На выходе мне нужно получить string (char, varchar) значение
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623412
123йй
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
dmdmdm
Код: plsql
1.
SQL> select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss00') from dual;

прочитай про кавычки
kolyadyневажно сотые секунды это или другие варианты точности тогда почему не хватает yyyy-mm-dd hh24:mi:ss ?
это подходит под твое требование
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623413
XMLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kolyady,
а теперь в таблице:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
create table date_test as
select sysdate as now
     , (sysdate - 1/(24 * 60 * 60)) one_second
     , (sysdate - 1/(24 * 60 * 60 + 1))  less_then_second
    ,  (sysdate - 1/(24 * 60 * 60 *60))  too_small
 from dual


select * from date_test
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623419
kolyady
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
XMLer,

Не могу понять к чему вы клоните.
У меня уже есть поле где хранится дата в формате date, мне нужно получить строку в формате String с максимальной точностью даты
тобиш чтобы это не было :
'30.03.18'
а
'2018-03-30 12:03:23.256894'

Вариант '2018-03-30 12:03:23.256894' - пока отображает максимальную точность на данный момент, может есть у кого то еще варианты?
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623423
Excession
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
kolyady,

В третьем посте этой темы есть ссылка, по которой ты найдешь абсолютно полный ответ на свои вопросы.
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623425
kolyady
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
123йй,

Вариант с нулями после секунд (select to_char(sysdate, 'yyyy-mm-dd hh24:mi:ss00') from dual;) у меня впринципи не отрабатывает или вместо 00 что то другое ставить нужно?

этот вариант сейчас работает (yyyy-mm-dd hh24:mi:ss) но такой точности мало
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623427
tru55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если у тебя тип поля date, то там НЕТ долей секунды. По определению. Если бы они там были, то не пришлось бы в Oracle 9 вводить новый тип данных timestamp.
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623433
Фотография -2-
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kolyadyхранится дата в формате date, мне нужно получить строку в формате String логично!
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623434
kolyady
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tru55,

После секунд SS (2 символа) через точку можно вывести еще 6 циферных значений, может то и не милисекунды но они отображают более точное значение
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623435
XMLer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kolyadyXMLer,

Не могу понять к чему вы клоните.
К тому что тебе кажется что у тебя есть сотые доли

Код: plsql
1.
2.
3.
4.
select case when (now - one_second) = (now - less_then_second) then 'equal' else 'not equal' end
     , case when (now - one_second) = (now - too_small) then 'equal' else 'not equal' end 
from date_test a
equal	not equal
...
Рейтинг: 0 / 0
Точность поля с типом Date
    #39623436
tru55
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если ты знаешь Oracle лучше, чем все остальные ответившие, то зачем тогда спрашивать?
...
Рейтинг: 0 / 0
25 сообщений из 41, страница 1 из 2
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Точность поля с типом Date
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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