я работаю с SQL Server 2012 и Visual Studio 2010 с Excel 2007.Сплит один Название столбца в двух столбцах с помощью SSIS
Я строю пакет, который будет извлекать информацию из .CSV
файла и импортировать его в таблицу в БД, которую мы создаем для проекта HRIS.
Файл .CSV
имеет следующие поля, начиная с В9 и проходит через колонку J (длина строки будет меняться)
| PersNo | IDNo | Name | PArea | OrgUnit | OrgName | UserID | EntryDate |
Проблема у меня есть, что мне нужно взять Name
столбец и разделить его на FirstName
и LastName
столбцов. Я просмотрел интернет и нашел несколько форумов, в которых подробно описаны методы, которые используют Derived Columns, условный разделитель, компонент скрипта и MultiCast. Ни один из них не был полезен или не отвечал моим потребностям.
Проблема сложная по названию. У меня есть три разных типа имен, которые можно отобразить.
John Smith
John A Smith
John Smith III
Последние два они должны быть разделены по-разному.
Если есть среднее начальное, они хотят, чтобы он был разделен как таковой.
| FirstName | LastName |
------------------------
| John | Smith A |
т.е. Смит и средний инициал будет в LastName
колонке
Если они имеют суффикс, то они должны быть разделены как таковой.
| FirstName | LastName |
-------------------------
| John | Smith III |
т.е. Смит и суффикс будет в LastName
колонке
мне нужно знать, если есть способ, что я могу разделить это в одном пакете.
В конечном итоге это будет автоматизировано для ежедневного запуска, поэтому мне также придется использовать поиск, который я предполагаю, чтобы отфильтровать любые дубликаты и ввести только новые данные.
Я ценю любую информацию, которую любой может предоставить.
Так что если у вас есть 'John A Smith III'? –
Я не думал об этом, но это возможность, которую я не рассматривал. В этом случае A и III оба будут в конце с суффиксом, являющимся последним битом. | Джон | Смит А III |. –
Работа с производными столбцами или скриптом - оба подхода описаны [здесь] (http://social.msdn.microsoft.com/Forums/sqlserver/en-US/2eb394d0-2cd8-4402-9bb4-14a03ccc4460/split -flat-file-column-data-into-multiple-columns-using-ssis) –