Nej. Oracle, som enhver anden rimelig relationel database, er mere effektiv, når du udfører sæt-baserede operationer, og når du udfører joins i stedet for proceduremæssigt at emulere joins (med f.eks. indlejrede cursor-løkker).
Mit gæt er dog, at du ikke rigtig taler om kode, der mangler joins. Mit gæt er, at du taler om kode, der bruger en anden join-syntaks, end du er vant til. Begge dele
SELECT a.*
FROM a
JOIN b ON (a.a_id = b.a_id)
JOIN c ON (b.b_id = c.b_id)
og
SELECT a.*
FROM a,
b,
c
WHERE a.a_id = b.a_id
AND b.b_id = c.b_id
er forespørgsler, der forbinder a
til b
til c
. De to forespørgsler er nøjagtigt identiske - Oracle-parseren vil faktisk internt omskrive den første forespørgsel til den anden. Den eneste forskel er, at den første forespørgsel bruger den nyere SQL 99-syntaks til at angive dens joinforbindelser.
Historisk set var Oracle relativt sent til at adoptere SQL 99-syntaksen, der er en enorm mængde kode, der blev skrevet før SQL 99-syntaksen var tilgængelig, og en del Oracle-folk foretrækker den gamle stilsyntaks af vane om ikke andet. Af alle disse grunde er det relativt almindeligt at finde Oracle-baserede projekter, der udelukkende bruger den ældre join-syntaks. Der er ikke noget iboende galt med det (selvom jeg personligt foretrækker den nyere syntaks).