私は2列の整数データを持つテンポラリテーブルを持っています。私は3列目の2つのカラムの違いを見たいと思っています。どのように2つの列のデータの違いを見つけるには?
#TEMP1
Present previous
59 88
75 75
45 45
77 88
09 08
#temp2
Difference
29
0
0
11
-1
これは可能ですか?
私は2列の整数データを持つテンポラリテーブルを持っています。私は3列目の2つのカラムの違いを見たいと思っています。どのように2つの列のデータの違いを見つけるには?
#TEMP1
Present previous
59 88
75 75
45 45
77 88
09 08
#temp2
Difference
29
0
0
11
-1
これは可能ですか?
select previous, Present, previous-Present as Difference from tablename
または
の表は、別名t
SELECT t.Present , t.previous, t.previous- t.Present AS Difference
FROM temp1 as t
はい、あなたは、データを選択する差異を計算し、他のテーブル内のすべての値を挿入することができている場合:
insert into #temp2 (Difference)
select previous - Present
from #TEMP1
これを行うには多くの方法があります(一般的にはより効率的になるので、それらを調べることをお勧めします)。これを行う最も簡単な方法は、3番目の列の値を定義するために非設定の操作を使用することです。
SELECT
t1.previous
,t1.present
,(t1.present - t1.previous) as difference
FROM #TEMP1 t1
このような選択スタイルは、最初の2つの列の値を再選択して3番目の論理を決定する必要があるため、不適切な方法と見なされます(SQLの基になる集合理論に違反します)。より複雑ですが、これを使用して例に挙げた値以上の評価をする予定がある場合は、APPLY節を使用して調査します。 http://technet.microsoft.com/en-us/library/ms175156(v=sql.105).aspx