Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

SQL JOIN WITH OR-Bedingung

Obwohl Join-Bedingungen normalerweise Gleichheitsprüfungen sind, gibt es nichts Besonderes an ihnen - jede gültige SQL-Bedingung könnte zum Ausführen eines Joins verwendet werden. In Ihrem Fall ein IN Bedingung erscheint angemessen:

SELECT   CompanyName, COUNT(DISTINCT CaseID)
FROM     Company co
JOIN     Workers w ON co.CompanyId = w.CompanyId
JOIN     Cases ca ON w.WorkerId IN (ca.Worker1, ca.Worker2, ca.Worker3)
GROUP BY CompanyName