У меня есть записи следующим образом:Возврат записи на основании результата функции
1) BEL
1) Mersen
А) VISHAY-SPRAGUE
ЦЕПЬ ПАРТНЕРЫ
BENTEK
ЦЕПЬ ТЕСТ
Я хочу вернуть отдельный набор, если в записи есть закрывающая скобка, а затем удалить весь префикс скобки (1) MERSEN становится MERSEN), в противном случае вернуть запись как есть. Это специальный, один запрос. Я пробовал что-то вроде этого.
IF (CHARINDEX(')', (SELECT [MANUFACTURER] FROM [dbo].[QPL_ITMSUPAC_NF]), 1) > 0)
SELECT DISTINCT SUBSTRING([dbo].[QPL_ITMSUPAC_NF].[MANUFACTURER], 4, 99)
FROM [dbo].[QPL_ITMSUPAC_NF]
ELSE
SELECT DISTINCT [dbo].[QPL_ITMSUPAC_NF].[MANUFACTURER]
FROM [dbo].[QPL_ITMSUPAC_NF]
... но получаю ошибку:
Subquery returned more than 1 value...
выше была в порядке.
Мысли?
Ошибка преобразования при преобразовании значения varchar '1) ANALOG DEVICES' в тип данных int. – CarloC
Мне очень жаль, что опечатка, попробуйте еще раз – jfun