web-dev-qa-db-ja.com

SQL Innerは複数の列条件を持つ2つのテーブルを結合して更新します

このスクリプトを使用して、3つの条件で2つのテーブルを結合し、T1を更新しようとしています:

Update T1 set T1.Inci = T2.Inci 
ON T1.Brands = T2.Brands 
AND T1.Category= T2.Category
AND T1.Date = T2.Date

しかし、私は遭遇します:

Incorrect syntax near the keyword 'ON'

理由がわかりません。

19
marilyn
UPDATE
    T1
SET
    T1.Inci = T2.Inci 
FROM
    T1
INNER JOIN
    T2
ON
    T1.Brands = T2.Brands
AND
    T1.Category= T2.Category
AND
    T1.Date = T2.Date
35
Robin Day

あなたがする必要があります

Update table_xpto
set column_xpto = x.xpto_New
    ,column2 = x.column2New
from table_xpto xpto
   inner join table_xptoNew xptoNew ON xpto.bla = xptoNew.Bla
where <clause where>

より良い回答が必要な場合は、詳細をお知らせください:)

4
Bruno Costa
UPDATE T1,T2 
INNER JOIN T1 ON  T1.Brands = T2.Brands
SET 
T1.Inci = T2.Inci
WHERE
    T1.Category= T2.Category
AND
    T1.Date = T2.Date
3
logsvikas

2つのテーブルから分析するには、sql結合を使用してT1テーブルとT2テーブルを結合する必要があります。学習結合のリンク: https://www.w3schools.com/sql/sql_join.asp

0