powered by simpleCommunicator - 2.0.37     © 2025 Programmizd 02
Форумы / SQLite [игнор отключен] [закрыт для гостей] / now в секунды юникса и обратно +
7 сообщений из 7, страница 1 из 1
now в секунды юникса и обратно +
    #39273420
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сорри
Код: sql
1.
select strftime('%Y-%m-%d',cast(strftime('%s', 'now') as string)), date('now')




а че даты разные?

1 4015-47-07 2016-07-13
...
Рейтинг: 0 / 0
now в секунды юникса и обратно +
    #39273421
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
и как из секунд с 1 января 70 года восстановить дату тайм?
...
Рейтинг: 0 / 0
now в секунды юникса и обратно +
    #39273424
MrCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
>> а че даты разные?

Мануал объясняэ, что 12-й формат time string - это juliandate, а не выход strftime('%s',...)
Код: sql
1.
2.
3.
4.
-- фу так делать:
select strftime('%Y-%m-%d', cast(strftime('%s', 'now') as string))
-- правильное, годное употребление:
select strftime('%Y-%m-%d', cast(julianday('now') as string))
...
Рейтинг: 0 / 0
now в секунды юникса и обратно +
    #39273429
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MrCat,
я хочу хранить в бд секунды юникса, мне по ним надо делать индекс
// это время когда использовалась картинка из кеша
то, что использовалось давно хочу удалять.
кроме собственно интов хочу видеть дату глазами в виде год месяц день час минута секунда.
// вью можно сделать где будут секунды и дата в виде текста
поэтому интересно
как из секунд юникса восстановить дату в виде текста?
...
Рейтинг: 0 / 0
now в секунды юникса и обратно +
    #39273435
MrCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Оттуда жеThe "unixepoch" modifier ... causes the DDDDDDDDDD to be interpreted not as a Julian day number as it normally would be, but as Unix Time - the number of seconds since 1970
Кроме того, для желающих странного лентяев у нас всегда найдутся проклятые жёлуди и спички .
...
Рейтинг: 0 / 0
now в секунды юникса и обратно +
    #39275103
Фотография tchingiz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
-- конвертация времени в секунды юникса и обратно

select  datetime ('1970-01-01', strftime('%s', 'now') ||' seconds', 'localtime')
union
select  datetime ('1970-01-01', strftime('%s', 'now') ||' seconds');


-- извлечение из БД секунд юникса в виде времени и целых

select nt,  datetime ('1970-01-01', uSecs ||' seconds'), uSecs from  tdtmTst



Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
drop table if exists tdtmTst;
create table tdtmTst (         --  тестирование различных версий времени
  id   INTEGER PRIMARY KEY autoincrement
  ,nt   varchar(512)
  ,dttm    datetime     DEFAULT CURRENT_TIMESTAMP
  ,tm      time DEFAULT CURRENT_TIMESTAMP
  ,tmstmp  time DEFAULT CURRENT_TIMESTAMP 
  ,dt      date DEFAULT CURRENT_TIMESTAMP
  ,uSecs   int
  ,val  varchar(256)            
);

insert into tdtmTst (usecs, val, nt) values ( 1, '1', 'первая запись');
insert into tdtmTst (dt, usecs, val, nt) 
     values ( date('now', '1 months')
               ,  1
               , '2'
               , 'прибавил месяц к дате')
;
insert into tdtmTst (dttm, usecs, val, nt) 
     values ( datetime('now', '1 months', '1 days','-25 hours')
         ,  strftime('%s', datetime('now', '1 months', '1 days' ))
         , '3'
         , 'прибавил месяц без одного часа')
;
insert into tdtmTst (dttm, tm, usecs, val, nt) 
    values ( datetime('now', '60  minutes')
             , time('now', '61 minutes')
             , strftime('%s', datetime('now', '61 minutes' ))

             , '4'
             , 'прибавил 61 минуту')
;  
insert into tdtmTst (dttm,usecs, val, nt) 
       values ( datetime('now', 'localtime')
                , strftime('%s', datetime('now'))
                 , '1'
                  , 'вставил локальное время и секунды юникса')
;


select tm, time(tm,'localtime') from tdtmTst; -- переход от ютс вермени к локальному


-- конвертация времени в секунды юникса и обратно

select  datetime ('1970-01-01', strftime('%s', 'now') ||' seconds', 'localtime')
union
select  datetime ('1970-01-01', strftime('%s', 'now') ||' seconds');


-- извлечение из БД секунд юникса в виде времени и целых

select nt,  datetime ('1970-01-01', uSecs ||' seconds'), uSecs from  tdtmTst 

...
Рейтинг: 0 / 0
now в секунды юникса и обратно +
    #39282284
спасибо
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / now в секунды юникса и обратно +
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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