0

2 つのテーブル。両方のテーブルに列 a (日時型) と列 b (数値型) があります。両方のテーブルで列 a を検索し、一致しないもののみを取得したいと考えています。次に、一致する日時列 a を持たない列 a と b のみを表示します。

    Select Column b from Table 1 
    left join Table 2
    where Table1.Column a <> Table2.Column a

これは正しいです??

4

2 に答える 2

2

@drjay またはNOT IN句で示されるように、左結合を使用できます。個人的には、NOT の方が読みやすいので好きです。

SELECT [Column b] 
FROM [Table 1]
WHERE [Column a] NOT IN (
    SELECT [Column a]
    FROM [Table 2]
)
于 2012-06-17T04:34:09.527 に答える
1

あなたは近くにいます。SQL Server を持っていないため、正確な構文はわかりません。しかし、MySQL では次のようになります。

SELECT * 
FROM table_1 t1 
LEFT OUTER JOIN table_2 t2 ON t1.date = t2.date 
WHERE t1.date <> t2.date;

あなたの質問のロジックは似ているはずです。必要に応じて構文を変更してください。

于 2012-06-17T04:30:44.537 に答える