Мне нужно написать определяемую пользователем функцию TSQL, которая будет принимать строку и возвращать число.
Я буду вызывать функцию вида dbo.EvaluateExpression('10*4.5*0.5')
должен возвращать число 22.5
Может ли кто-нибудь помочь мне написать эту функцию EvaluateExpression
.
В настоящее время я использую функцию CLR, которую мне следует избегать.
Edit1
Я знаю, что это можно сделать с помощью хранимой процедуры, но я хочу вызвать эту функцию в некоторых операторах, например: select 10* dbo.EvaluateExpression('10*4.5*0.5')
Также у меня есть около 400 000 таких формул для оценки.
Изменить2
Я знаю, что это можно сделать с помощью внутренней функции osql.exe, как описано здесь. Но из-за настроек разрешений я также не могу использовать это.