2009-07-16 12 views
-2

У меня есть два таблицы T1 и T2.I используется сервер Sql 2000.Сравнение строк в SQL Server!

Таблица T1

ID WorkerName  Group 
1 Rahim,Karim  1 
2 Kamal,Adam   3 
3 Rahim,Karim  1 

Таблица T2

WorkerID WorkerName 
1   Rahim 
2   Karim 
3   Kamal 
4   Adam 

Я хочу заменить Worker Имя на T1 с 1-м WorkerID на T2.

Таблица T1

ID WorkerName  Group 
    1  1    1 
    2  3    3 
    3  1    1 

Есть ли решение для этого?

+0

Вводящий в заблуждение заголовок. Если вы собираетесь назвать свой вопрос «Сравнение строк в SQL Server!» Почему вы не спрашиваете, как выполнить сравнение строк? –

ответ

2
update T1 set WorkerName = T2.WorkerId 
from T1, T2 
where T1.WorkerName like T2.WokerName + ',%' 
+0

Адам вы теряете информацию с этим запросом. После запятой есть другое имя пользователя, которое нужно также искать. –

+0

Он заботится только о первом имени, второе имя отбрасывается. –

+0

Чувак, когда я посмотрел на него, ему нужны были оба имени, проверьте историю, которую он редактировал с тех пор. –

-2

Вам необходимо написать хранимую процедуру, которая выполняется в таблице T1 для каждой записи и разделить WorkerName с помощью разделителя запятой и выполнить запрос в таблице T2, чтобы получить идентификатор для имени пользователя и обновить таблицу T1.

+0

plz пришлите мне синтаксис SQL ... – Nasir

+0

Читайте на хранимых процедурах, строковых функциях в SQL и курсорах – colithium

+0

Нахид - это не простой запрос, вам нужно узнать, что предложил колени. –

Смежные вопросы