Конвертировать несколько строк из одной строки на основе конкретного символа - PullRequest
1 голос
/ 22 марта 2019

Я пытаюсь преобразовать одну строку в несколько строк на основе конкретного символа Я скопировал скрипт от кого-то, кто работал с его / ее примером, но не работал для меня, как показано ниже

;WITH tmp(NOTEINDX, DataItem, TXTFIELD) AS
(
    SELECT
        NOTEINDX,

        LEFT(TXTFIELD, CHARINDEX('#', TXTFIELD + '#') - 1),
        STUFF(TXTFIELD, 1, CHARINDEX('#', TXTFIELD + '#'), '')
    FROM SY03900
    UNION all

    SELECT
        NOTEINDX,

        LEFT(TXTFIELD, CHARINDEX('#', TXTFIELD + '#') - 1),
        STUFF(TXTFIELD, 1, CHARINDEX(',', TXTFIELD + '#'), '')
    FROM tmp
    WHERE
        TXTFIELD > ''
)

SELECT
    NOTEINDX,

    DataItem
FROM tmp
ORDER BY NOTEINDX

Однако я получаю ошибку ниже

Msg 402, Level 16, State 1, Line 6
The data types text and varchar are incompatible in the add operator.

Я использую SQL Server 2008 Спасибо, Hatim

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...