Я нашел пару тем по этой теме, но ответы казались слишком сложными для того, что я пытаюсь сделать.Поиск нечетных символов в строке
Я использую SQL Developer и имею таблицу, позволяющую называть ее HR_Employees. Эта таблица, которую я должен использовать для заполнения таблицы фактов, мы будем называть ее Fact_Key. Эта таблица фактов имеет 3 столбца, включая описание, а также столбец Employee_Key (который является первичным ключом).
Задача, которую я имею, состоит в том, чтобы выяснить способ создания employee_key из поля Department_ID. Для половины компании это автоматически создается на основе некоторой информации о зарплате и помещается в таблицу Fact_Key, однако для другой половины (которая объединяется в первую половину) они не используют одну и ту же систему расчета заработной платы, поэтому это не сработает для нас , Я должен взять идентификатор Department_ID и использовать его для создания employee_key, объединив его с другими полями (например, employee_number). См. Ниже:
INSERT INTO FACT_KEY (Employee_Key, Description)
SELECT RPAD(Employee_Number||Deptartment_ID, 15,'0'), EmployeeJob_Code
FROM HR_EMPLOYEES
Я заполняю это, чтобы сохранить все ключи с последовательной длиной в 15 символов. Проблема, с которой я столкнулся, - это поле Employee_Key - это числовой тип данных, но у идентификатора Department_ID есть нечисловые символы в нем в случайных местах. Мне нужен способ удалить эти символы или, желательно, изменить их на свои ASCII-копии. Есть ли простой способ сделать это?
Все, что я видел, кажется слишком сложным, и я искал более простой способ сделать это (включая только одну или две функции), поскольку это происходит в хранимой процедуре, и я был направлен, чтобы это было просто. Любая помощь будет оценена, спасибо!
вы можете не изменить тип данных '' employee_key' к varchar'? –
Реальная выборка того, что вы хотите сделать, поможет много; Здесь отличное место для начала. http://spaghettidba.com/2015/04/24/how-to-post-a-t-sql-question-on-a-public-forum/ –