に設定し、結果を1つ取得:月の値が異なる2つのSQLテーブル。私はこのような2つのテーブルを持っている場合はすべての月
表1
Month 1 3
表2
Month 1 4
はどのようにして、次の結果セットを得るのですか?
Month 1 3 4
に設定し、結果を1つ取得:月の値が異なる2つのSQLテーブル。私はこのような2つのテーブルを持っている場合はすべての月
表1
Month 1 3
表2
Month 1 4
はどのようにして、次の結果セットを得るのですか?
Month 1 3 4
SELECT [Month]
FROM Table1
UNION
SELECT [Month]
FROM Table2
を設定 結果は、このようなUNION
演算子を使用します
SELECT Month FROM Table1
UNION
SELECT Month FROM Table2
をSQL UNION演算子は、二つ以上のSELECT文を組み合わせたユニークな値で単一の結果を生成します。
結果を1つのセットにまとめるには、UNIONを使用します。デフォルトでは
SELECT Month
FROM Table1
UNION
SELECT Month
FROM Table2
UNION
だけので、あなたの正確な結果、個別の値をつかみます。重複した値が必要な場合は、UNION ALL
を使用して、あなたの例で月を1回表示することができます。
ここには違いがあることを示す良いtutorialもあります。
表2から表1 UNION FROM SELECT月を選択月を
使用UNION
トリックを行う必要があります。
SELECT month FROM table1 UNION SELECT month FROM table2
ここに私のソリューション
declare @ temptable table(months varchar(10)) inserto into @temptable(months) select distinct Month from Table1 inserto into @temptable(months) select distinct Month from Table2 select disticnt * from @temptable
はたぶんもっと良い方法があるとされます?
SELECTとUNION結果セットの両方で月1を取得できませんか? – DOK
'UNION ALL'とは異なりユニークな値を返す' UNION'ではないと思います。 – Sarfraz
@DOK:いいえ、 'UNION ALL'はフルセットを返します。 'UNION'は一意の値を返します。 – shamittomar