bonjour,
j'ai essayé via des jointures de transformer une table avec des résultats sous forme de liste verticale en table triée sous forme de liste horizontale,
j'explique j'ai du personnel avec une fonction et une équipe
avec une requête classique j'obtiens un résultat sous cette forme:

pers1 | fonction 1 | equ1
pers2 | fonction 1 | equ2
pers3 | fonction 2 | equ1
pers4 | fonction 2 | equ2
pers5 | fonction 1 | equ3
pers6 | fonction 3 | equ1
pers7 | fonction 2 | equ3
pers8 | fonction 3 | equ3

mais j'aimerai pouvoir le trier sous forme de:

fonction | equ1 | equ2 | equ3
-----------------------------------
fonction1| pers1 | pers2 | pers5
fonction2| pers3 | pers4 | pers7
fonction3| pers6 | null | pers8

les 2 tables sont

TABLE1
PERS_ID|PERS_NOM|PERS_FONCTION
TABLE2
EQUIPE_ID|EQUIPE_PERS_ID

donc j'ai éssayé sous forme de jonction de tables mais je n'arrive pas au résultat voulu..
peut être avez vous une idée...

pour info voilà ma requête;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
SELECT EQU1.FUN, EQU1.NAME, EQU2.NAME 
FROM
(SELECT DISTINCT U.TU_FUN AS FUN, U.TU_NAM AS NAME 
FROM T_USER AS U
JOIN T_EQUIPE AS E ON U.TU_ID = E.TEQ_USER
AND E.TEQ_EQU = '1' ) AS EQU1 
LEFT OUTER JOIN 
(SELECT DISTINCT U.TU_FUN AS FUN, U.TU_NAM AS NAME 
FROM T_USER AS U
JOIN T_EQUIPE AS E ON U.TU_ID = E.TEQ_USER
AND E.TEQ_EQU = '2' ) AS EQU2
ON EQU1.FUN LIKE EQU2.FUN