SQL Server-Abfrage - Nullwert zurückgeben, wenn keine Übereinstimmung vorliegt

Ich habe ein Problem, das ich aus irgendeinem Grund nicht herausfinden kann. Ich versuche, eine Abfrage zu schreiben, die zwei Tabellen verknüpft, in denen möglicherweise keine Übereinstimmung in einer Tabelle gefunden wird. Sowie:

SELECT 
    Table1.IDField, Table2.IDField
FROM 
    Table1
LEFT OUTER JOIN 
    Table2 ON Table1.PersonID = Table2.PersonID
WHERE 
    (Table1.IDField = '12345')
    AND (Table2.Category = 'Foo')

Wenn es keine Übereinstimmung in gibtTable2Es gibt nichts zurück. Es muss jedoch nur ein NULL-Wert für diese Spalte zurückgegeben werden, wenn keine Übereinstimmung vorliegt, und der Wert von wird trotzdem zurückgegebenTable1.

Ich habe das geändertJOIN mit allem, was mir einfällt, aber ohne Erfolg.

Table2.Category kann mehrere andere Werte enthalten, also aOR IS NULL Art von Deal wird nicht funktionieren.

Also, wenn es keine Übereinstimmung für gibtTable2.Category = 'Foo'Ich brauche es immer noch, um zurückzukehren:

Table1 | Table2
----------------
 12345 |  NULL

Irgendwelche Vorschläge?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage