powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Объединение столбцов "дата" и "время" из древней таблицы в тип "date"
9 сообщений из 9, страница 1 из 1
Объединение столбцов "дата" и "время" из древней таблицы в тип "date"
    #39330077
Psylosopher
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Господа, не совсем тривиальная задача для меня возникла. В некоторой старой базе была таблица, где разделялись столбец "date" и столбец "time". При импорте данных в Oracle я сделал столбец "time" текстовым, не долго думая. Каким образом (и возможно ли это) мне теперь объединить эти два столбца в один "Date" с типом date в таблице Oracle, с учетом того, что некоторые записи в столбце "время" null?
DateTime21.02.200909:54:2321.02.200910:50:1021.02.2009null
...
Рейтинг: 0 / 0
Объединение столбцов "дата" и "время" из древней таблицы в тип "date"
    #39330084
Пробегал
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: plsql
1.
2.
3.
4.
WITH t AS (SELECT '21.02.2009' dt, '09:54:23' tm FROM dual
           UNION ALL  
           SELECT '21.02.2009' dt, NULL tm FROM dual)
SELECT TO_DATE(dt || NVL2(tm, tm, NULL), 'dd.mm.yyyy' || NVL2(tm, 'hh24:mi:ss', NULL)) dat FROM t
...
Рейтинг: 0 / 0
Объединение столбцов "дата" и "время" из древней таблицы в тип "date"
    #39330172
Фотография Fogel
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Пробегал
Код: plsql
1.
2.
3.
4.
WITH t AS (SELECT '21.02.2009' dt, '09:54:23' tm FROM dual
           UNION ALL  
           SELECT '21.02.2009' dt, NULL tm FROM dual)
SELECT TO_DATE(dt || NVL2(tm, tm, NULL), 'dd.mm.yyyy' || NVL2(tm, 'hh24:mi:ss', NULL)) dat FROM t


не проще ли так:
Код: plsql
1.
SELECT TO_DATE(dt || NVL(tm,'00:00:00'), 'dd.mm.yyyyhh24:mi:ss') dat FROM t
...
Рейтинг: 0 / 0
Объединение столбцов "дата" и "время" из древней таблицы в тип "date"
    #39330286
Еще проще
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
2.
3.
4.
WITH t AS (SELECT '21.02.2009' dt, '09:54:23' tm FROM dual
           UNION ALL  
           SELECT '25.02.2009' dt, NULL tm FROM dual)
SELECT TO_DATE(dt || tm, 'dd.mm.yyyy hh24:mi:ss') dat FROM t
...
Рейтинг: 0 / 0
Объединение столбцов "дата" и "время" из древней таблицы в тип "date"
    #39330326
Psylosopher
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Друзья, спасибо за оперативные ответы... Только вот я либо что-то либо не понял, в силу недостаточной квалификации... То ли неправильно объяснил задачу...
В этой таблице порядка 10 000 записей... Мне предполагается их все вручную перебрать union all? И давайте я чуток уточню поля и задачу.

tablitsa:
eventdate timein21.02.2009 09:54:2321.02.2009 10:50:1021.02.2009 null21.02.2009 23:43:0021.02.2009 23:44:2021.02.2009 23:46:23
...
Рейтинг: 0 / 0
Объединение столбцов "дата" и "время" из древней таблицы в тип "date"
    #39330334
Psylosopher
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
timein - текстовое поле
...
Рейтинг: 0 / 0
Объединение столбцов "дата" и "время" из древней таблицы в тип "date"
    #39330335
Psylosopher
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
где я указал null - там просто пусто
...
Рейтинг: 0 / 0
Объединение столбцов "дата" и "время" из древней таблицы в тип "date"
    #39330343
Дожили
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Код: sql
1.
SELECT TO_DATE(eventdate || timein, 'dd.mm.yyyy hh24:mi:ss') dat FROM откуда_табличку_скопипастил
...
Рейтинг: 0 / 0
Объединение столбцов "дата" и "время" из древней таблицы в тип "date"
    #39330354
Psylosopher
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дожили,

спасибо, друг. Просто я потупил чуть-чуть. Вопрос закрыт
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Объединение столбцов "дата" и "время" из древней таблицы в тип "date"
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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