diff --git a/src/graphql/models/groupModel.ts b/src/graphql/models/groupModel.ts
index 1a4e217d9c122af6d362d23e87b1422a5fa559ea..9785d3c2f3570fe113845b7f48f14cfa3cfeccb0 100644
--- a/src/graphql/models/groupModel.ts
+++ b/src/graphql/models/groupModel.ts
@@ -160,7 +160,10 @@ export class GroupModel {
      * @rights connectedOrOnplatal
      */
     getAllSimpleGroupsFromMeta(gid: string): Promise<GroupSet> {
-        throw "Not implemented";
+        let arg=new GroupSet();
+        arg.add(gid);
+        let res=Tools.simpleGroupsOfGroups(arg);
+        return res;
     }
 
     /**
diff --git a/src/graphql/models/tools.ts b/src/graphql/models/tools.ts
index 26d0f8b9357507a2abd7c3edc7b7c763c13ecb43..7a1895ad0033304dfce3c44ee36a9985cfe1844b 100644
--- a/src/graphql/models/tools.ts
+++ b/src/graphql/models/tools.ts
@@ -119,6 +119,21 @@ export class Tools {
         }));
     }
 
+    /**
+     * @memberof GraphQL
+     * @summary Fonction qui renvoit tous les simple-groupes dont ces groupes sont membres.
+     * @arg {GroupSet} groups - Un ensemble de gid des groupes a considérer.
+     * @return {Promise(GroupSet)} Renvoie un GroupSet contenant le nom des simple-groupes.
+     * @static
+     * @async
+     */
+    static async simpleGroupsOfGroups(groups: GroupSet): Promise<GroupSet> {
+        let simples = await knex.select('simple_group_gid').from('metagroup_memberships').whereIn('meta_group_gid', [...groups]);
+        return new GroupSet(simples.map( elt => {
+            return elt.simple_group_gid;
+        }));
+    }
+
     /**
      * @memberof GraphQL
      * @summary Fonction qui renvoit tous les groupes (simples ou méta) dont le user est membre.