La principale différence est quand vous avez filtre spécifiquement pour la droite comme TableB=?
joinWith: défaut condition join tel que défini dans le schéma
$rows = TableAQuery::create()
->joinWith('TableB')
->find();
useTableBQuery Utilisez un filtre pour la table droite
$rows = TableAQuery::create()
->useTableBQuery()
->filterByColumnName($value) // A column in TableB
->endUse()
->filterByColumnName($value2) // A column in TableA
->find();
Notez que le deuxième ->filterByColumnA()
est en dehors du ->useTablBQuery
, pour montrer que vous pouvez avoir filtre sur les deux tables