Удалить все после пятого и включая / (обновить таблицу) - PullRequest
0 голосов
/ 07 июня 2018

В столбце с именем sites у меня есть такие данные:

http://mysharepoint/site1/test/test2

http://mysharepoint/site1/test

http://mysharepoint/site3/test/test4/test432

http://mysharepoint/site1/test

Мне нужно обновить таблицу с удалением пятой / и всего после.Длина sitename может варьироваться, иначе я бы легко исправил это через Excel и импортировал его снова.

Я безуспешно пробовал огромное количество правых и левых путей.

1 Ответ

0 голосов
/ 07 июня 2018

Вы можете использовать CHARINDEX следующим образом:

UPDATE yourTable SET sites=(CASE WHEN CHARINDEX('/', sites, 
                                      CHARINDEX('/', sites,
                                      CHARINDEX('/', sites,
                                      CHARINDEX('/', sites,
                                      CHARINDEX('/', sites)+1)+1)+1)+1)-1 > 0
                                 THEN LEFT(sites,
                                           CHARINDEX('/', sites,
                                           CHARINDEX('/', sites,
                                           CHARINDEX('/', sites,
                                           CHARINDEX('/', sites,
                                           CHARINDEX('/', sites)+1)+1)+1)+1)-1
                                          ) 
                                 ELSE sites END)

Требуется CASE WHEN, если нет /.

Демо-ссылка

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