Я не могу понять, почему Charindex не работает

Я действительно сбит с толку......

Может кто-нибудь сказать мне, почему

   charindex('\', REVERSE('test\henrov')) as char1,
   charindex('\', REVERSE('test\henrov'))-1 as char2,
   len(RIGHT('test\henrov', charindex('\', REVERSE('test\henrov'))))-1 as test,
   right('test\henrov',6) as [OK],
   right('test\henrov', charindex('\', REVERSE('test\henrov'))-1) as [ALSO_OK]

работает и

   charindex('\', REVERSE(m.username)) as char1,
   charindex('\', REVERSE(m.username))-1 as char2,
   len(RIGHT(m.username, charindex('\', REVERSE(m.username))))-1 as test,
   right(m.username,6) as [OK],
   right(m.username, charindex('\', REVERSE(m.username))-1) as [NOT_OK]

не работает? m.username - это varchar, содержащий 'test\henrov'.....

Я получаю сообщение об ошибке: Неверный параметр длины передан в ПРАВУЮ функцию.

1 ответ

Решение

Глупый! Я нашел решение здесь:

SQL charindex throwing Недопустимый параметр длины, переданный в функцию LEFT или SUBSTRING из-за точки?

право (имя пользователя m., charindex('\', REVERSE(имя пользователя m. +) \ ') -1) как [OK_Yes]

Другие вопросы по тегам