Après avoir récupéré la collection de la requête, je souhaite la trier. Ensuite, le message d'erreur suivant est apparu :
Code d'erreur : 907 Message d'erreur : ORA-00907 : Position du crochet droit manquant : 202 Instruction : SELECT count(*) FROM EXISTS "ATTENDANCE_LISTS" AS AGGREGATE (SELECT * FROM "MEETINGS" WHERE "ATTENDANCE_LISTS"."MEETING_ID " = "MEETINGS "."ID" et "STATUS_MEETING" = :p0 et "START_MEETING" <= :p1 ordre par "START_MEETING" desc) Liaison : [Disetujui,2022-04-19 20:11:24] ( SQL : select count( *) comme agrégat dans les "ATTENDANCE_LISTS" existants (sélectionnez * dans "MEETINGS" où "ATTENDANCE_LISTS"."MEETING_ID" = "MEETINGS"."ID" AND "STATUS_MEETING" = Disetujui AND "START_MEETING" ”<= 2022-04 - 19 20:11:24 Appuyez sur « START_MEETING » pour commander desc))
Le code est le suivant :
$meetings2 = AttendanceLists::whereHas('meeting', function ($query) { $now = new DateTime("now"); $query->where('status_meeting', '=', 'Disetujui') ->where('start_meeting', '<=', $now) ->orderBy('start_meeting', 'desc') ; })->paginate(5);
Je viens de créer la requête en utilisant la méthode éloquente Laravel ci-dessus et j'ai du mal avec cela depuis des jours. S'il vous plaît aidez-moi.
Oui, voici un article apparemment similaire : ORA-00907 : parenthèse fermante manquante
Cependant, le problème que je rencontre n'a rien à voir avec la construction manuelle de la requête au format SQL . J'ai construit la requête en utilisant la méthode éloquente PHP Laravel, donc cela ne peut pas vraiment être un problème de parenthèses manquantes. **
Modifier : Bref, le problème se pose lorsque j'essaie de trier la liste de présence par l'attribut "réunion" (triée par l'attribut de l'attribut). De l'aide?
C'est la solution.
La solution est de changer l'endroit où doit se joindre. Le code est le suivant :