Comment puis-je obtenir plusieurs enregistrements d'alertes (jusqu'à 10 par élève) sur un enregistrement par élève? J'essaie d'utiliser le numéro de ligne pour numéroter les enregistrements, puis les placer dans la sortie, mais le code que j'ai écrit ne fonctionne pas en raison d'erreurs de syntaxe incorrectes sur le paramètre "where" dans l'instruction cross apply. J'ai essayé plusieurs façons d'accomplir ce dont j'ai besoin, mais je ne peux pas dépasser les erreurs. S'il vous plaît aider.Comment obtenir plusieurs enregistrements combinés à un en utilisant le numéro de ligne?
select
sd.[student_number],
a.[health_alert],
a.[comments],
b.[health_alert],
b.[comments]
from student_enrollmentcube as se,
student_demographicscube as sd
cross apply (select a.[health_alert], a.[comments], (select row_number()
over (partition by a.[student_id] order by a.[student_id]) as r1 from
ar_student_health_alerts) a) where a.[student_id] = sd.[student_id] and
r1 = 1)
cross apply (select b.[health_alert], b.[comments], (select row_number()
over (partition by b.[student_id] order by b.[student_id]) as r2 from
ar_student_health_alerts) b) where b.[student_id] = sd.[student_id] and
r2 = 2)
where se.student_id = sd.student_id and
se.enrollment_status= 'active' and
se.[current_academic_year] = 'y'
Est-ce lié à SQL? Si c'est le cas, apposez une étiquette appropriée. – genpfault
s'il vous plaît inclure le message d'erreur exact ainsi –