sql >> Databasteknik >  >> RDS >> Mysql

Fel:Ogiltig PathExpression. Måste vara ett StateFieldPathExpression som misslyckas vid val av fält

Du måste ansluta dina relationer med hjälp av deras mappade egenskaper som för enkät, du måste ansluta till detta i ditt frågebyggarobjekt

$result = $qb->select(['csr.id','s']) // or add column names ['csr.id','s.id','s.title', ...]
              ->from('Entity\ClientSurveyRecord', 'csr')
              ->innerJoin('csr.survey','s')
              ->innerJoin('Entity\AbstractClientRecord','cr','WITH','cr.id = csr.id')
              ->innerJoin('Entity\Client','c','WITH','cr.client = c.id')
              ->where('s.id = :id_survey')
              ->setParameter('id_survey',$id)
              ->getQuery()
              ->getResult();

Det skulle också vara bra om du går med i Entity\AbstractClientRecord och Entity\Client använda några mappade egenskaper som du redan har gjort för undersökning, som

$result = $qb->select(['csr.id','s'])
              ->from('Entity\ClientSurveyRecord', 'csr')
              ->innerJoin('csr.survey','s')
              ->innerJoin('csr.abstractClientRecord','cr')
              ->innerJoin('cr.client','c')
              ->where('s.id = :id_survey')
              ->setParameter('id_survey',$id)
              ->getQuery()
              ->getResult();



  1. Google diagram tidslinje med datum i x-axeln

  2. En känslolös logisk titt på SQL Servers namnkonventioner

  3. Frågeoptimeringstekniker i SQL Server:5 bästa metoder för att öka sökresultaten

  4. 6 sätt att lägga till ett år till ett datum i MariaDB