0

私はSQLの経験があまりありませんが、テーブルを結合して別のテーブルの説明を使用して、1つのテーブルで2つの価格を更新する(20%の税金を追加する)必要があるクエリをまとめました。ここに私の問題コードがあります:-

UPDATE IT_PRICE
SET ITPrice1 = Price1 + (Price1 * .2), ITPrice2 = Price2 + (Price2 * .2)
INNER JOIN IT_PRICE
ON ITEMS.ID = IT_PRICE.ID
Where ITPrice1 <= 0 AND ITPrice2 <=0 AND ITEMS.Item = 'Jet Tec HP 78'

SQL Express 2008 と完全な SQL 2012 でこれを試しましたが、「INNER」で構文エラーが発生するため、WITH ステートメントを使用して別の角度からヒットしようとしました:-

WITH Item_ID as (
SELECT ITEMS.ID FROM ITEMS WHERE ITEMS.Item = 'Jet Tec HP 78'
)
UPDATE IT_PRICE
SET ITPrice1 = Price1 + (Price1 * .2), ITPrice2 = Price2 + (Price2 * .2)
WHERE ITPrice1 <= 0 AND ITPrice2 <=0 AND ID = Item_ID

ステートメントを実行すると、「Invalid column name Item_ID」が表示されます。私がしたいのは、IT_PRICE テーブルの 2 つの価格に、説明と一致する ITEMS のすべてのアイテムに税金を追加することだけです。

誰かが私を正しい方向に向けることができれば、それは非常にありがたいです.

ありがとう。

4

1 に答える 1

1

FROM 句がありません:

UPDATE IT_PRICE
SET ITPrice1 = Price1 + (Price1 * .2), ITPrice2 = Price2 + (Price2 * .2)
FROM IT_PRICE ITEMS INNER JOIN IT_PRICE
ON ITEMS.ID = IT_PRICE.ID
Where ITPrice1 <= 0 AND ITPrice2 <=0 AND ITEMS.Item = 'Jet Tec HP 78'
于 2013-02-18T17:22:23.403 に答える