Non ho capito come MySQl gestisca le join right e left.

Faccio un esempio semplicerrimo:

Tabella 1
campoA=1 campoB=2


Tabella 2
campoC=3 campoD=4

Se metto in join la tabella1 e la tabella2 con una sintassi del genere:

select * from tabella1 t1
inner join tabella2 t2
on t1.campoA = t2.campoC
where t1.campoB = 2

non dovrei ottenere alcun record.

Se la query però diventasse:
select * from tabella1 t1
left join tabella2 t2
on t1.campoA = t2.campoC
where t1.campoB = 2

Dovrei ottenere il record della tabella1, anche se la condizione di join non è soddisfatta.

MySQL, a quanto pare, non ragiona così.
Sbaglio qualcosa o l'SQL di MySQL non è standard?
Mi aspetterei comportamenti molto simili se non uguali a quelli di Oracle, visto che il produttore è il medesimo.