Standard och portabel SQL skulle vara FINNS.. och är semantiskt samma IN
SELECT *
FROM requests R
WHERE
EXISTS (SELECT *
FROM node n
WHERE r.id = n.nid AND r.langid = n.langid
)
Flerkolumn IN är inte portabel till SQL Server eller Sybase åtminstone.
Övriga anmärkningar:
- En JOIN kan kräva en DISTINCT och är inte detsamma som IN eller FINNS.
- Det sista alternativet är INTERSECT som stöds mindre vanligt och fungerar som IN/EXISTS
- IIRC vissa förhistoriska MySQL-versioner (3.x?) stödde inte korrelationen för EXISTS