Я пытаюсь написать функцию, которая обрабатывает значение столбца и возвращает значение со всем символом «@».Если значение содержит определенный символ, то сделайте это или сделайте это
мне удалось сделать это до сих пор, используя следующий код:
Create Function fnStaffCodeConvert (@staffcode varchar(10))
Returns varchar(4)
AS
BEGIN
DECLARE @staffinitals varchar(4)
SET @staffinitals = (SELECT substring(@staffcode,0, CHARINDEX('@',@staffcode)))
Return @staffinitials
END
Пример результата из функции - параметр в = AB[email protected]
, возвратов = ABC
.
Это работает, но затем исключительно возвращает каждый результат, когда столбец содержит значение @
, а оставшиеся результаты без @
опущены. То есть [email protected]
возвращение ABC
но XYZ
не возвращается ничего.
Как я могу изменить код, чтобы дать мне оба набора значений? Я предполагаю, что мне пришлось бы поставить заявление «IF» там, но я не уверен, как написать его, чтобы получить результаты, которые я хочу.
Большое спасибо заранее :)
Mike
Возможно, вы должны добавить тэг для ** LANGUAGE **, который используете для написания функции? Разве вы не думаете, что может быть подходящим тегом типа 'sql'? – Mecki
Какую базу данных вы используете? –