sql >> Database teknologi >  >> RDS >> Oracle

Hvorfor kan du ikke bruge OR eller IN med en OUTER JOIN-operation?

Du har forresten defineret en indre joinforbindelse der.

Ved at have en klausul mod den højre tabel skal den opfylde begge kriterier.

SELECT p.Name, a.Attribute
FROM People p
LEFT OUTER JOIN Attributes a
ON p.PersonID = a.PersonID 
WHERE a.Attribute IN ('Happy','Grouchy') -- This means that the right side must exist also
AND p.person_id IN ('Elmo', 'Oscar') 

Brug enten INNER JOIN eller flyt denne WHERE til ON-klausulen som et OG



  1. SQLite JSON_PATCH()

  2. Sådan bruger du GROUP_CONCAT-funktionen på MSSQL

  3. JPA SET IDENTITY_INSERT virker ikke

  4. Kan ikke indsætte byte[] i MySQL ved hjælp af java