Опция 1
Одним из решений будет изменение настройки NLS вашего сеанса, которая управляет форматом по умолчанию, в котором возвращаются временные метки, в целевой формат временных меток.В зависимости от вашего реального типа данных это может быть любое из трех следующих:
alter session set nls_timestamp_format = 'YYYY-MM-DD HH24:MI:SS';
alter session set nls_timestamp_tz_format = 'YYYY-MM-DD HH24:MI:SS';
alter session set nls_date_format = 'YYYY-MM-DD HH24:MI:SS';
Затем вы можете просто сделать:
SELECT * FROM pick_order_hist;
Недостатком этого подхода является то, что это изменяетформат по умолчанию для времени жизни вашего сеанса (или до тех пор, пока он не будет изменен на что-то другое).В зависимости от вашего варианта использования это может или не может быть тем, что вам нужно.
Вариант 2
В противном случае вы можете выбрать все столбцы с помощью *
, изатем добавьте столбцы форматированных меток времени, используя псевдонимы столбцов в наборе результатов.Таким образом, вместо перечисления всех столбцов, вам просто нужно перечислить столбцы отметки времени.Недостатком является то, что вы получаете несколько дополнительных столбцов в наборе результатов, по одному для каждой неформатированной метки времени;Вы можете просто игнорировать их в своем приложении.
SELECT
t.*,
TO_CHAR(porh_received, 'YYYY-MM-DD HH24:MI:SS') porh_received_with_format
FROM pick_order_hist t;