Не могу понять ошибку - PullRequest
0 голосов
/ 27 апреля 2018

Я получаю ошибки с этим запросом? и я не могу понять, как написать это правильно.

Неверный синтаксис рядом с>

CONVERT (
                       VARCHAR (5000)
                     , SUBSTRING (
                                     Message
                                   , CHARINDEX ('^14=', Message) + 4
                                   , CHARINDEX ('^', Message, CHARINDEX ('^14=', Message) + 4)
                                     - CHARINDEX ('^14=', Message) - 4,SUBSTRING(

                  CHARINDEX ('^14=', Message) > 0,
             CHARINDEX ('^', Message, CHARINDEX ('^14=', Message) + 4)>0)) AS [ErrorMessage]

1 Ответ

0 голосов
/ 27 апреля 2018

Неясно, что вы пытаетесь сделать, но вы не используете SUBSTRING() правильно. При состоянии документа эта функция равна substring(expression, start, length). Вот ваша попытка (прокрутите вправо, чтобы прочитать комментарии):

CONVERT (VARCHAR (5000)
        ,SUBSTRING(Message,                                                                                                 --expression
                  CHARINDEX ('^14=', Message) + 4,                                                                          --start
                  CHARINDEX ('^', Message, CHARINDEX ('^14=', Message) + 4) - CHARINDEX ('^14=', Message) - 4               --length, needs a ) here to finish the SUBSTRING
            ,SUBSTRING(CHARINDEX ('^14=', Message) > 0, CHARINDEX ('^', Message, CHARINDEX ('^14=', Message) + 4)>0)    --what is this? Starting a new column? Some part of the length arguement of the previous substring?
        ) AS [ErrorMessage]                                                                                                 --closing the COMVERT

Вам понадобится объяснить, что вы пытаетесь сделать, чтобы получить дополнительную помощь. Возможно, у вас на руках проблема XY . Однако core проблемы с вашей попыткой:

  • Вы пропускаете закрывающие скобки при первом SUBSTRING() вызове
  • У вас слишком много аргументов в вашей CONVERT() функции
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...