根据MSDN文档,这是不可能的:
句法
从table1 [左| 右] JOIN table2 ON table1.field1 compopr table2.field2
和(强调我的):
field1,field2: 这些字段必须具有相同的数据类型,并且包含相同类型的数据,但是它们不必具有相同的名称。
看来,您的联接中甚至都没有硬编码的值;您必须指定要连接的列名称。
在您的情况下,您需要:
SELECT *
FROM Table1
LEFT JOIN (
SELECT DISTINCT TOP 1 ID
FROM Table2
ORDER BY ID
) Table2Derived ON Table1.ID = Table2Derived.ID