T-SQL:测试条件如果匹配othertable,否则包含不测试

T-SQL: test condition if match other table, otherwise include without test

这是我正在尝试做的事情,但我不太理解正确的语法:

SELECT 
    myKey1, myDate1
FROM 
    myTable1, 
    (SELECT myKey2, myDate2 FROM myTable2) as myDatesQuery
WHERE
    -- myTable1.myKey1 = myDatesQuery.myKey2 AND myTable1. myDate1 < myDatesQuery. myDate2
    -- OR myTable1.myKey1 not found in myDatesQuery

因此,如果 myDatesQuery 中不存在 myKey1,则包含它。如果 myKey1 = myKey2 仅当 myDate1 在 myDate2 之前时包含它。

非常感谢

尝试:

Select myTable1.myKey1, myTable1.myDate1
    FROM 
(SELECT myKey2, myDate2 FROM myTable2) as myDatesQuery
left outer join myTable1 
        on myTable1.myKey1 = myDatesQuery.myKey2
        where myTable1.myKey1 is null or myTable1.myDate1< myDatesQuery.MyDate2