列名がtime
の表Aと、value1
の表Bと、列名がtime
の表Bの場合は、value2
です。これら2つのテーブルを1つのテーブルに結合するには、time
、value1
、value2
のSQL Serverを使用しますか?共通の列に基づいて1つの表に2つの表を結合します
表A:時間、VALUE1
表B:時間、値2
出力:
あなたが必要なもの、時間、値1、値
列名がtime
の表Aと、value1
の表Bと、列名がtime
の表Bの場合は、value2
です。これら2つのテーブルを1つのテーブルに結合するには、time
、value1
、value2
のSQL Serverを使用しますか?共通の列に基づいて1つの表に2つの表を結合します
表A:時間、VALUE1
表B:時間、値2
出力:
あなたが必要なもの、時間、値1、値
古典的ですJOIN:
SELECT t1.time, t1.value1, t2.value2
FROM Table1 t1
LEFT JOIN Table2 t2 ON t1.time=t2.time
PS!いくつかのデータベースでは、LEFT JOIN
はLEFT OUTER JOIN
と呼ばれます。
は、ANSI-92互換性のために、オプションのOUTER識別子を使用して、古い学校に行きました。投げ戻しの木曜日は完全な効果があります。 – scsimon
時間が違うとどうなりますか?私は時間がない場合はnullを入れたいと思います。 – Mat
@Mat 'table1'に一致する時刻がないのに' table2'で一致しない時刻があると、次の結果が得られます: 't1.time、t1.value、NULL' – user3378165
面白いアプローチは次のようになります: - JOINを使用
SELECT time, value1, '' as value2
from A
UNION ALL
SELECT time, '' as value1, value2
FROM B
面白い.. – scsimon
SELECT A.time, A.value1, A.value2
FROM Table1 A
INNER JOIN Table2 B ON A.time=B.time
詳細を編集してください。コード専用と「試してください」の回答は、検索可能なコンテンツが含まれていないため、推奨されません。なぜ誰かが「これを試してみる」べき理由を説明しません。 – Paritosh
..... – scsimon