Wer in Doctrine Tabellen joinen möchte ohne das diese durch Entity Relationen definiert sind, kann folgendermaßen vorgehen:
public function getInvoicesNotInElster()
{
$query = $this->em->createQueryBuilder()
->select('i')
->from('AcmeAppBundle:Invoice', 'i')
->leftJoin('AcmeAppBundle:Elster', 'e', 'WITH', 'e.number = i.number_origin')
->where('i.cancelled = 0')
->andWhere('e.number IS NULL')
->getQuery();
return $query->getResult();
}