2016-08-31 1 views
-2

ウェブを検索しましたが、私の必要と同じものは見つかりませんでした。私はnorthwindサンプルデータベースを使用しています。Whole Columnを一度に更新しますか?

たとえば、私はExcelシートに添付された新しい価格を持っています。

My excel Sheet

私は、[製品の更新]という名前の新しいテーブルとしての私のデータベースにインポートし、列名は[製品、新価格]上記と同じであり、今私は、この新しい価格の製品にテーブルを更新したいと来ましたシートを凌ぐ

私は15の更新文を書いたくありません。それは、私が信じている一コマのコマンドで一度に行う必要があります。

私はこの

update Products 
set UnitPrice = [Product Updates].[New Price]) 
where Products.ProductName=dbo.[Product Updates].Product 

のようなものを書きました。しかし、それは動作しません

+0

書式コードを書いていますが、書式コードはコード化していません – Paparazzi

+0

はい、申し訳ありません。私は長い間anytihgを求めていませんでした。私はsthに尋ねるのに慣れています。 – UfukSURMEN

答えて

3

一つの簡単な解決策はjoinを使用しています。

update p 
    set UnitPrice = pu.[New Price] 
    from Products p JOIN 
     [Product Updates] pu 
     on p.ProductName = pu.Product; 

私はスペースを入れずに、物事に名前を付けるためにあなたを助言します、角カッコを使用する必要はありません。彼らは、単にクエリを書くことと読むことを難しくしています。

+0

あなたは完璧です。そして助言のおかげで。しかし、私はsthに尋ねられました。私は自分の状況で同じことを見つけることができませんでした。 – UfukSURMEN

+1

@UfukSURMEN。 。 。私はなぜ質問がdownvotesを引き付けるのか分からない。それは、サンプルデータ、クエリでの試行、正しいタグを持っているので、私にとっては妥当と思われます。 –

関連する問題