Как сделать так, чтобы пользовательская функция разделила столбец на два столбца текста и цифр ?
проблема
Как сделать UserDefinedFunction в SQL server 2012 разделенным текстом столбца на два столбца .
первый столбец включает текстовые символы только в качестве единицы измерения и
второй столбец включает числа только в случае целого или десятичного числа и т. д.?
create table #temp ( columnTextNumbers nvarchar(50) ) insert into #temp (columnTextNumbers) values ('3.5A'), ('5.50kg'), ('35.70kg'), ('9m')
Мне нужно, чтобы существовать функция Split имя столбца columnTextNumbers на временную таблицу #Temp для
два столбца
первый столбец будет columnTextValues включать только единицы измерения .
второй столбец будет columnNumberValues включать только числа, если они целочисленные или десятичные и т. д..
таким образом ввод будет иметь одно значение текст и цифры
и выходной результат будет состоять из двух столбцов, как показано ниже :
columnNumberValues columnTextValues 3.5 A 5.50 kg 35.70 kg 9 m
Что я уже пробовал:
SELECT subsrtunit,LEFT(subsrtnumeric, PATINDEX('%[^0-9.]%', subsrtnumeric+'t') - 1) FROM ( SELECT subsrtunit = SUBSTRING(string, posofchar, LEN(string)), subsrtnumeric = SUBSTRING(string, posofnumber, LEN(string)) FROM ( SELECT string, posofchar = PATINDEX('%[^0-9.]%', string), posofnumber = PATINDEX('%[0-9.]%', string) FROM #temp ) d ) t
MadMyche
И ЧТО ЖЕ ПРОИСХОДИТ?
Что касается криков ... после более чем 250 вопросов вы еще не поняли, что мы собираемся задать это
ahmed_sa
Мне нужно сделать результат выше как функцию SQL, так как это сделать .
то что я пытаюсь дать мне правильный результат только то что мне нужно сделать преобразование кода выше в функцию SQL