Преобразование числовых значений в формат временных интервалов [дубликаты]

NUM_ROWS показывает количество строк на основе последнего анализа, поэтому вы не должны полагаться на него. Я предлагаю запустить подсчет, например.

SELECT COUNT(*) 
FROM your_table PARTITION FOR (DATE '2016-04-01')

или

SELECT COUNT(ROWNUM)
FROM your_table PARTITION FOR (DATE '2016-04-01')
WHERE ROWNUM <= 1

Он должен быть намного быстрее, чем DBMS_STATS.GATHER_TABLE_STATS (если у вас есть какой-либо индекс в этой таблице)

1
задан Armando González Díaz 18 January 2019 в 17:38
поделиться

1 ответ

Мы можем вычислить все три части вручную, так же как в этот ответ:

sprintf("%02d:%02d:%02d", x %/% 3600, (x %% 3600) %/% 60, x %% 60)
#  [1] "38:49:25"  "88:50:17"  "145:45:29" "00:24:51"  "58:50:31"  "07:39:31" 
#  [7] "04:14:14"  "118:45:46" "87:13:36"  "02:36:12" 

Поскольку один час имеет 3600 секунд, x %/% 3600 дает количество полных часов 112] дает количество полных минут в оставшееся время, а x %% 60 - количество оставшихся секунд.

0
ответ дан Julius Vainora 18 January 2019 в 17:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: