Ввод - это таблица из одной строки или нескольких строк с 7 столбцами информации. Я хочу превратить эти 7 столбцов в таблицу из нескольких строк с повторением первого столбца и еще двух столбцов, второго с компонентом ID и третьим столбцом. the componentLength.
Вот оригинальный вопрос ниже.
SELECT
(CASE
WHEN SpecificationID = '889' AND RTTopEntryLength > '0' AND RTSideEntryLength > '0'
THEN CONVERT(varchar, (infill_id + '|' + infill_id + '|' + infill_id))
WHEN SpecificationID = '889' AND RTTopEntryLength = '0' AND RTSideEntryLength > '0'
THEN CONVERT(varchar, (infill_id + '|' + infill_id))
WHEN SpecificationID = '889' AND RTTopEntryLength > '0' AND RTSideEntryLength = '0'
THEN CONVERT(varchar, (infill_id + '|' + infill_id))
ELSE CONVERT(varchar, infill_id)
END) AS 'InfillIDList'
FROM
INFILLTABLE
WHERE
SpecificationID = '889'
Я получаю эту ошибку:
Msg 245, Level 16, State 1, Line 1
Conversion failed when converting the varchar value '|' to data type int.
Что мне здесь не хватает? Я конвертирую всю строку в Varchar. Почему при попытке преобразования в целое число снова возникает ошибка?