Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Есть, например 12859 сек. Как это число разбить на дни-часы-минуты-секунды? / 11 сообщений из 11, страница 1 из 1
28.06.2016, 13:32
    #39263763
Perederiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть, например 12859 сек. Как это число разбить на дни-часы-минуты-секунды?
сабж
...
Рейтинг: 0 / 0
28.06.2016, 13:43
    #39263788
Lonepsycho
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть, например 12859 сек. Как это число разбить на дни-часы-минуты-секунды?
Perederiy,

Код: sql
1.
SELECT justify_interval(INTERVAL '1 seconds' * 12859);

не то?
...
Рейтинг: 0 / 0
28.06.2016, 14:05
    #39263821
Perederiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть, например 12859 сек. Как это число разбить на дни-часы-минуты-секунды?
Lonepsycho,
спс

но выдает 0 YEARS 0 HOURS 21 MIN 5 SEC

как его преобразовать в вид 00.21.05 ?
...
Рейтинг: 0 / 0
28.06.2016, 14:21
    #39263844
Lonepsycho
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть, например 12859 сек. Как это число разбить на дни-часы-минуты-секунды?
Perederiy,

тогда, наверное, можно смотреть на сторону to_char или
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
SELECT 
  EXTRACT('years' FROM v.i) AS years,
  EXTRACT('months' FROM v.i) AS months,
  EXTRACT('days' FROM v.i) AS days,
  EXTRACT('hours' FROM v.i) AS hours,
  EXTRACT('minutes' FROM v.i) AS minutes,
  EXTRACT('seconds' FROM v.i) AS seconds
FROM
  (
    SELECT justify_interval(INTERVAL '1285912356 seconds') AS i    
  ) AS v;

и собирать при помощи CONCAT как вам угодно.
...
Рейтинг: 0 / 0
28.06.2016, 17:21
    #39264050
p2.
p2.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть, например 12859 сек. Как это число разбить на дни-часы-минуты-секунды?
Деление в начальной школе перестали проходить?
...
Рейтинг: 0 / 0
28.06.2016, 21:18
    #39264249
Perederiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть, например 12859 сек. Как это число разбить на дни-часы-минуты-секунды?
p2.,

что сказать хотели ?
...
Рейтинг: 0 / 0
28.06.2016, 22:31
    #39264278
Jonhson
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть, например 12859 сек. Как это число разбить на дни-часы-минуты-секунды?
Perederiyp2.,

что сказать хотели ?

он хотел сказать, что используя операции целочисленного деления и остатка от деления (mod ) вы сможете легко получить минуты, часы и секунды.

И как ни странно, он прав.
...
Рейтинг: 0 / 0
28.06.2016, 22:47
    #39264282
Perederiy
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть, например 12859 сек. Как это число разбить на дни-часы-минуты-секунды?
JonhsonPerederiyp2.,

что сказать хотели ?

он хотел сказать, что используя операции целочисленного деления и остатка от деления (mod ) вы сможете легко получить минуты, часы и секунды.

И как ни странно, он прав.

вы лучше скажите как убрать нулевые значения при выводе ?

типа 0 YEARS 0 HOURS 21 MIN 5 SEC сделать 00:21:05

в pgadmin3 все верно, а в запросе через JDBC выдает нулевые значения
где копать ?
...
Рейтинг: 0 / 0
28.06.2016, 23:29
    #39264302
vyegorov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть, например 12859 сек. Как это число разбить на дни-часы-минуты-секунды?
Perederiy,

Код: sql
1.
SELECT to_char(INTERVAL '1 seconds' * 12859, 'hh24:mi:ss');


С переводом в дни + часы будет сложнее, надо руками считать, выбирая такие кол-ва часов в сутках, и суток в месяце, какие подходят для вас. В бухгалтерии 24 часа в сутках, 30 дней в месяце.
...
Рейтинг: 0 / 0
29.06.2016, 00:22
    #39264331
p2.
p2.
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть, например 12859 сек. Как это число разбить на дни-часы-минуты-секунды?
Perederiyв pgadmin3 все вернотак и зачем тогда искать приключений на стороне.
...
Рейтинг: 0 / 0
29.06.2016, 09:40
    #39264425
Jonhson
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Есть, например 12859 сек. Как это число разбить на дни-часы-минуты-секунды?
PerederiyJonhsonпропущено...


он хотел сказать, что используя операции целочисленного деления и остатка от деления (mod ) вы сможете легко получить минуты, часы и секунды.

И как ни странно, он прав.

вы лучше скажите как убрать нулевые значения при выводе ?

типа 0 YEARS 0 HOURS 21 MIN 5 SEC сделать 00:21:05


стоп, есть 3 числа, 0, 21 и 5. Это правильный результат,

а как его вывести вопрос форматирования, опять же to_char (), как уже сказали. Не пойму в чём сложность
...
Рейтинг: 0 / 0
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Есть, например 12859 сек. Как это число разбить на дни-часы-минуты-секунды? / 11 сообщений из 11, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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