Ho 2 tabelle chiamate Libri e recensioni. La tabella dei libri ha una relazione uno-a-molti con recensioni.Come utilizzare JOIN in Yii2 Active Record per modello relazionale?
Voglio cercare libri e ordinarli per Recensioni.
Ad esempio, se sono disponibili 10 libri e i libri sono recensiti in Recensioni, quindi voglio trovare tutti i libri utilizzando la clausola WHERE e conteggiare le recensioni e quindi ordinare tutti i libri in base al numero di revisione.
mia query SQL è come segue:
Books::find()
->where([
'and',
['like', 'books.bookName', $bookName],
['like', 'books.status', 'Enabled']
])
->joinWith(['reviews' => function ($q){
$q->select(['COUNT(*) as cnt']);
}])
->orderBy(['cnt' => 'DESC'])
->all();
E 'darmi seguente messaggio di errore:
SQLSTATE [42S22]: Colonna non trovato: 1.054 Unknown colonna 'CNT' in 'clausola di ordine '
Cosa mi manca qui?
Grazie. Ma qui, ho bisogno di contare le recensioni totali per ogni libro e poi ordinare l'elenco dei libri in base al numero di recensioni. –
Ciao, grazie. Ho aggiornato la domanda. Volete dare un'occhiata a quello aggiornato. Grazie. –