jointure sur table hérité
bonjour,
je cherche a faire une requete d'aggrégation sur 3 tables dont une qui est fille d'une table plus grosse, je ne comprends pas comment faire.
mon schéma simplifier:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40
|
section:
columns:
name: string(50)
user:
columns:
firstname: string(50)
lastname: string(50)
section_id: integer
relations:
section:
foreignAlias: listuser
asset:
columns:
type: string(50)
name: string(50)
user_id: integer
relations:
user:
foreignAlias: listasset
email:
inheritance:
extends: asset
type: columns_aggregation
keyField: type
keyValue: email
columns:
serveur: string(50)
email_historic:
columns:
email_id: integer
date: date
size: integer
relations:
email:
foreignAlias: HistoricSize |
ce que je souhaite, c'est pour un mois la somme par section des boites mail, du style:
Code:
1 2 3 4 5 6 7
|
SELECT s.name, sum(e.size)
FROM section s
LEFT JOIN user u ON u.section_id = s.id
LEFT JOIN email e ON e.user_id = u.id
GROUP BY s.name
WHERE e.date="2001-06-01" |
j'ai créer la requete DQL suivante mais ça ne marche pas:
Code:
1 2 3 4 5 6 7 8 9
|
->SELECT('s.name, sum(e.size)')
->FROM('section s')
->leftJoin('s.listuser u')
->leftJoin('u.listasset e')
->leftJoin('e.HistoricSize')
->GROUPBY('s.name')
->where('e.date=?','2011-096-01') |
message d'erreur: Unknown relation alias HistoricSize