PC SOFT

FOROS PROFESIONALES
WINDEVWEBDEV y WINDEV Mobile

Inicio → WINDEV 2025 → requete avec des données croisé
requete avec des données croisé
Iniciado por monsitenet, 03,oct. 2018 18:21 - 6 respuestas
Miembro registrado
52 mensajes
Publicado el 03,octubre 2018 - 18:21
Bonsoir
je trouve quelque difficulté avec la réalisation d'une requête qui select des données et les maitres en croisé voici l'exemple:

le fichier HF contient les lignes suivantes:
eleves :: matieres :: note
ramzi :: x :: 5
farid :: y :: 6
fati :: z :: 7
ramzi :: z :: 5
farid :: x :: 6
fati :: y :: 7
ramzi :: y :: 5
farid :: z :: 6
fati :: x :: 7

la requête que je cherche à réaliser :
eleves :: x :: y :: z
ramzi :: 7 :: 5 :: 7
farid :: 5 :: 6 :: 6
fati :: 6 :: 7 :: 5

Merci

--
BN_DEV
Miembro registrado
2.682 mensajes
Publicado el 03,octubre 2018 - 18:31
Bonjour,

La requête que tu cherches à faire n'est pas réalisable sur une base HFSQL. Il te faut exécuter ta requête et traiter les lignes dans une boucle pour les ajouter dans tableau de structure par exemple ou dans une table.

--
Cordialement,

Philippe SAINT-BERTIN
Publicado el 04,octubre 2018 - 11:36
Philippe SB avait prétendu :
Bonjour,

La requête que tu cherches à faire n'est pas réalisable sur une base HFSQL.
Il te faut exécuter ta requête et traiter les lignes dans une boucle pour les
ajouter dans tableau de structure par exemple ou dans une table.


en mysql il existe un truc génial pour cela ; le group_concat

est-ce que cela existe en hf sql ?

--
Roumegou Eric

---
Cet email a fait l'objet d'une analyse antivirus par AVG.
http://www.avg.com
Miembro registrado
2.682 mensajes
Publicado el 04,octubre 2018 - 12:13
En PostgreSQL il y a les grouping set, en sql server le cube olap, en HFSQL rien de ce genre n'existe.

De plus GROUP_CONCAT ne correspond absolument pas à son besoin.
--
Cordialement,

Philippe SAINT-BERTIN
Mensaje modificado, 04,octubre 2018 - 12:19
Publicado el 04,octubre 2018 - 16:47
Après mûre réflexion, Philippe SB a écrit :
En PostgreSQL il y a les grouping set, en sql server le cube olap, en HFSQL
rien de ce genre n'existe.

De plus GROUP_CONCAT ne correspond absolument pas à son besoin.


ok j'avais pas bien décortiqué ...
mais en sql classique, si on sait s'attendre aux différentes occurences
de matières (x,y,z), on peut agir en group by et en case

select eleve,
max(case matiere when 'x' then note else null end) as note_x,
max(case matiere when 'y' then note else null end) as note_y,
max(case matiere when 'z' then note else null end) as note_z,
from fichiernote
group by eleve;

là j'ai la note maximale par eleves et par matières

--
Roumegou Eric

---
Cet email a fait l'objet d'une analyse antivirus par AVG.
http://www.avg.com
Miembro registrado
2.682 mensajes
Publicado el 05,octubre 2018 - 10:36
mais en sql classique, si on sait s'attendre aux différentes occurences
de matières (x,y,z), on peut agir en group by et en case


C'est vrai, mais cela exclu automatiquement les matières en option.

--
Cordialement,

Philippe SAINT-BERTIN
Publicado el 05,febrero 2019 - 06:15
Salut. Je cherche la solution de ce problème depuis longtemps. Pouvez m'expliquer la démarche ?
Merci d'avance