2017-11-24 23 views
0

私はSQLのまったく新しいものです。私は2つのテーブルを結合し、MySQLのtable_bの類似のカラムからtable_aからカラム値を減算しようとしています。列見出しと行見出しは、両方の表で同じです。2つのテーブルを結合し、複数の列を減算します

例:私が欲しいもの

Table_a 
Id_num Val1 Val2 Val3 
nameA  10  20  30 
nameB  40  50  60 

Table_b 
Id_num Val1 Val2 Val3 
nameA  20  35  50 
nameB  60  65  85 

は次のようになりますテーブルです:

Id_num Val1 Val2 Val3 
nameA  10  15  20 
nameB  20  15  25 

私は次のことを試してみた:

SELECT Table_a.Id_num 
     (Table_a.Val1 - Table_b.Val1) as Val1, 
     (Table_a.Val2 - Table_b.Val2) as Val2, 
     (Table_a.Val3 - Table_b.Val3) as Val3 
    FROM Table_a 
    INNER JOIN Table_a on Table_a.Id_num = Table_b.Id_num; 

私から得ることができるすべてのこれは、 'Table_a'がユニークなテーブル/エイリアスではないという構文エラーです。

私は完全に混乱しています。どんな助けもありがたい。 >これは間違っている、あなたのタイピングである - あなたのSELECTとあなたのjoin

+2

Table_aインナーはtable_aに参加Table_bにすべきですか? –

+0

あなたが何を求めているのか分かりません。私の例では、Table_aに小文字の "t"を入力していませんでしたか? – Richard

+0

投稿のコードブロックに注意してください "FROM Table_a INNER JOIN Table_a"。私はそれがあなたの入力ミスだと思うが、あなたが本当にこのようなコードを書くなら、それは大きな誤りである。もう一つは、私は以下の答えがかなり良いことを参照してくださいそれはあなたのための正解かもしれません –

答えて

2
あなたが昏睡状態に欠けている

SELECT Table_a.Id_num, 
     (Table_a.Val1 - Table_b.Val1) as Val1, 
     (Table_a.Val2 - Table_b.Val2) as Val2, 
     (Table_a.Val3 - Table_b.Val3) as Val3 
    FROM Table_a 
    INNER JOIN Table_b on Table_b.Id_num = Table_a.Id_num; 
+0

はい!!!!どうもありがとうございます!!!! – Richard

関連する問題