powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Разделить столбец на 2 столбца по разделителю
4 сообщений из 4, страница 1 из 1
Разделить столбец на 2 столбца по разделителю
    #40082571
Dolphiin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет, прошу подсказать как можно разделить один столбец на два столбца по разделителю?

Пример с исходными данными (разделитель знак "| "):

Дата Столбец24.12.2020 Инвентаризация02.06.2021 Оплата | Проблемы с терминалами06.06.2021 Неизвестно06.06.2021 Грузы | Оформление доставки

Как хочу:

Дата Столбец1 Столбец224.12.2020 Инвентаризация02.06.2021 Оплата Проблемы с терминалами06.06.2021 Неизвестно06.06.2021 Грузы Оформление доставки
...
Рейтинг: 0 / 0
Разделить столбец на 2 столбца по разделителю
    #40082598
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dolphiin,

например, так, если точек нет
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
;with cte (dt,str) as 
(select '24.12.2020',N'Инвентаризация' union all 
select '02.06.2021',N'Оплата | Проблемы с терминалами' union all 
select '06.06.2021',N'Неизвестно' union all 
select '06.06.2021',N'Грузы | Оформление доставки')
select 
	dt
    ,REVERSE(PARSENAME(REPLACE(REVERSE(str), ' | ', '.'), 1)) [col1]
    ,REVERSE(PARSENAME(REPLACE(REVERSE(str), ' | ', '.'), 2)) [col2]
from cte 


...
Рейтинг: 0 / 0
Разделить столбец на 2 столбца по разделителю
    #40082618
Dolphiin
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
komrad,

Благодарю)
...
Рейтинг: 0 / 0
Разделить столбец на 2 столбца по разделителю
    #40082641
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dolphiin,

если точки есть
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
;with cte (dt,str) as 
(select '24.12.2020',N'Инвентаризация' union all 
select '02.06.2021',N'Оплата | Проблемы с терминалами' union all 
select '06.06.2021',N'Неизвестно' union all 
select '06.06.2021',N'Грузы | Оформление доставки')
select 
	dt
	,str
	,left(str,iif(str not like N'% | %',len(str),patindex(N'% | %',str))) [col1]
	,stuff(str,1,iif(str not like N'% | %',len(str),patindex(N'% | %',str))+2,N'') [col2]
from cte 


...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Разделить столбец на 2 столбца по разделителю
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]