powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как перелить даные с изменением
9 сообщений из 9, страница 1 из 1
Как перелить даные с изменением
    #32064107
SoftPacker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У меня есть таблица с 40000 записями в ней есть поле FIO
(фио) я создал таблицу где есть поля Firstname, Lastname,Middlename как мне перекачать данные из одной таблицы в другую средствами T-SQL ?
...
Рейтинг: 0 / 0
Как перелить даные с изменением
    #32064125
Genady
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
[src]Insert into .....
select substring(..., ..., ...) ...[/src
...
Рейтинг: 0 / 0
Как перелить даные с изменением
    #32064130
SoftPacker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если одной функцией не обойтись надо удалять лишние пробелы не нужные знаки типа запятых....
...
Рейтинг: 0 / 0
Как перелить даные с изменением
    #32064138
Genady
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда Replace.

SoftPacker, ну что тяжело что ли в BOL просмотреть String Functions?
...
Рейтинг: 0 / 0
Как перелить даные с изменением
    #32064150
fima
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот пример:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
create table test
(
	fio varchar ( 32 )
)
create table test1
(
	Surname varchar ( 10 ), 
	[Name] varchar ( 10 ),
	Patronymic varchar ( 10 )
)
insert into test values ('Иванов Иван Иванович')
insert into test values ('Пертров Петр Петрович')
insert into test values ('Сидоров Сидр Сидорович')
insert into test values ('Андреев Андрей Андреевич')
go
insert into test1 (Surname, [Name], Patronymic)
select 'Surname' = substring(fio,  1 , charindex(' ', fio)),
	'Name' = substring (right(fio, len(fio) - charindex(' ', fio)),  1 , charindex(' ', right(fio, len(fio) - charindex(' ', fio)))),
	'Patronymic' = substring (right(fio, len(fio) - charindex(' ', fio)), charindex(' ', right(fio, len(fio) - charindex(' ', fio))) +  1 , len(right(fio, len(fio) - charindex(' ', fio))) +  1  - charindex(' ', right(fio, len(fio) - charindex(' ', fio))))
from test
select * from test1
drop table test
drop table test1
result:
Surname    Name       Patronymic 
 ---------- ---------- ---------- 
 
Иванов     Иван       Иванович
Пертров    Петр       Петрович
Сидоров    Сидр       Сидорович
Андреев    Андрей     Андреевич

( 4  row(s) affected)
...
Рейтинг: 0 / 0
Как перелить даные с изменением
    #32064302
SoftPacker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Genady извини я не корректно поставил вопрос... как разделить то я знаю.... суть вопроса в том как втиснуть обработку состоящую из последовательности операторов в конструкцию insert select или такое не возможно надо применять другие ухищерения... ? Какие например поделитесь опытом...?
...
Рейтинг: 0 / 0
Как перелить даные с изменением
    #32064310
vap
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А почему ответ fima вам не нравится ?
...
Рейтинг: 0 / 0
Как перелить даные с изменением
    #32064323
SoftPacker
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vap очень нравиться спасибо fima но слишком уж длинные конструкции приходиться городить.... вот если ввести тройку переменых все намного короче получаеться.... похоже тут без создания функций не обойтись?
...
Рейтинг: 0 / 0
Как перелить даные с изменением
    #32064434
fima
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я поначалу хотел функцией сделать, но функцией у меня не получилось... если кто сделает, поделитесь опытом...
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Как перелить даные с изменением
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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