2017-07-05 13 views
0

私は2つのテーブルを持っています。sqlは別のテーブルの1つのカラムに複数の値を更新します

コメントから

table_a table_b

IDA、IDB nameA nameB remarkA1 remarkB remarkA2

更新:コード私は疲れて

UPDATE table_b 
SET remarkB = table_a.remarkA1 
FROM table_a WHERE table_b.id = table_a.id 

しかし、私は唯一の列に一つの値を更新することができ、このコードremarkB、更新値をtable_bからtable_aに変更する場合は、更新値で remarkA1remarkA2remarkBどうすればいいですか?

+0

は、両方のテーブルをい接続している? 2つのテーブルは互いにどのようにリンクされていますか?あなたが試した質問はどれですか? –

+0

@Gone the tableは接続していません。 私は疲れていましたよ。 UPDATE table_b SET remarkB = table_a。私はremarkBがremarkA1、remarkA2から2つの値を持っているしたい場合、私は、列remarkB、 に一つの値を更新することができtable_b.id = table_a.id しかし、このコードtable_a FROM remarkA1 。 書き込みできますか? –

答えて

0

は、あなたは、私がtable_a.remarkA1table_a.remarkA2のデータ型を想定していCONCAT

がある文字列に文字列を必要と一緒に、次のUPDATEステートメントを使用することができます(つまり、VARCHAR

UPDATE table_b 
SET remarkB = CONCAT(table_a.remarkA1, ' ', table_a.remarkA2) 
FROM table_a 
WHERE table_b.idB = table_a.idA 
+0

ありがとうございますが、SQL Server 2008 r2を使用しています。 コンカットを使用できません。何ができますか? –

+0

@Bear_Seul - 以前のバージョンでは 'SELECT {fn concat(table_a.remarkA1、table_a.remarkA2)};'を試すことができます。 –

+0

は、CONCAT – Leo

関連する問題