sql >> Databáze >  >> RDS >> Mysql

Symfony 2:INNER JOIN na nesouvisející tabulce s tvůrcem dotazů na doktríny

Dnes jsem pracoval na podobném úkolu a vzpomněl jsem si, že jsem otevřel tento problém. Nevím, od které verze doktríny to funguje, ale právě teď se můžete snadno připojit k dětským třídám v mapování dědičnosti. Takže dotaz jako tento funguje bez problémů:

$query = $this->createQueryBuilder('c')
        ->select('c')
        ->leftJoin('MyBundleName:ChildOne', 'co', 'WITH', 'co.id = c.id')
        ->leftJoin('MyBundleName:ChildTwo', 'ct', 'WITH', 'ct.id = c.id')
        ->orderBy('c.createdAt', 'DESC')
        ->where('co.group = :group OR ct.group = :group')
        ->setParameter('group', $group)
        ->setMaxResults(20);

Spustím dotaz v mé nadřazené třídě, která používá mapování dědičnosti. V mém předchozím příspěvku to byl jiný výchozí bod, ale stejný problém, pokud si dobře pamatuji.

Protože to byl velký problém, když jsem s tímto číslem začínal, myslím, že by to mohlo být zajímavé i pro ostatní lidi, kteří o tom nevědí.



  1. Nelze načíst sestavu mysql.web

  2. Příprava příkazu MySQL INSERT/UPDATE s DEFAULT hodnotami

  3. Jak se připojit k MySQL pomocí Perlu

  4. Formát řetězce URL pro připojení k databázi Oracle pomocí JDBC