У меня есть текстовый файл с данными следующим образом:данных разбора из одной колонки в нескольких столбцов
A 123 JoeBSD1639973e7378790
A 344 TomGDF7393694e0902087
B 344 ZenGDF9838987e0849399
Я использовал SQLLDR навалом вставить временную таблицу, и все данные в одном столбце, так как я здесь нет полевого разделителя.
Теперь я хочу, чтобы отделить эти данные в столбцах следующим образом:
Section Book1 Name Book2 RollNo Book3 RegNo
----------------------------------------------------------
A 123 Joe BSD 1639973 e 7378790
A 344 Tom GDF 7393694 e 0902087
B 344 Zen GDF 9838987 e 0849399
Как я могу определить поля использует длину полукокса, как Секция 2 Длина, Книга1 составляет 4, зовут 3, Book2 3, RollNo - 7, Book3 - 1, а RegNo - 7.
Может ли кто-нибудь помочь мне с запросом сделать это преобразование?
Использование SubStr, так как речь идет о фиксированной длины блока http://www.techonthenet.com/oracle/functions/substr.php –
The Основной вопрос здесь - длина ваших первых двух полей: раздел и книга1. Разделяет ли поле 2 символа и книгу 4 или книга 5 и раздел 1? Основываясь на данных, внешний вид состоит в том, что секция может быть 2 символа и книга 4, но мы не можем сделать вывод, что из представленных данных есть образец строки без каких-либо пробелов? – xQbert
Вы правы Раздел может быть 2 символа, но в представленном наборе данных отображается только 1 символ. Аналогично, книга 1 может быть 4, но в этом примере установить это только 3. – Monica