2016-08-01 6 views
1

これはおそらくこれを無視しすぎているのでここになります。別のテーブルの別の列に基づいて列を設定する必要があります

私は2つのテーブルを持っています。最初のものはTokenIdの値に基づいてCorporationIdに値を設定します。

dbo.UsersAccountLink:

enter image description here

そして、私はから値を取得したいテーブル:

Company.Token:

enter image description here

がここに私がいます持っているがそれは正しく設定されていないので、実行されません。私はこれを行う方法がわからないんだけど:

INSERT INTO dbo.UsersAccountLink.CorporationId 
Select CorporationId 
From Company.Token 
Where Company.Token.TokenId = dbo.UsersAccountLink.TokenId 

私はのTokenIdに基づいてCompany.Token.CorporationIdの値とdbo.UsersAccountLink.CorporationIdを移入します。

ヘルプ?あなたは、インサートに対して更新するよう

+0

はここに注意してください。一意の識別子をプライマリキーとして使用しているようです。これらの主キーがクラスタード・インデックスでもある場合、パフォーマンスが非常に悪くなる可能性があります。 guidsの断片化は、わずか数千行で99.99%を超えます。より良いクラスタリング列が必要な場合や、インデックスを絶えず最適化する必要がある場合。 –

答えて

3

が見える...

update dbo.UsersAccountLink 
set CorporationID = 
(Select CorporationId 
From Company.Token 
Where Company.Token.TokenId = dbo.UsersAccountLink.TokenId) 
+0

それは意味があり、それは完全に働いた。 Tyvm !! – ErocM

+1

いいえ汗@ErocMとロールタイド – scsimon

+0

ロールタイド! :) – ErocM

関連する問題