zuerst will ich mich erstmal für den nichtssagenden Betreff entschuldigen. Ich wusste auf Anhieb kein Besseren.
Wenigstens hast du das DBMS genannt :) ich bin so frei und ändere den Betreff damit du ggf. danach auch in einer Suchmaschine suchen kannst.
Jetzt will ich per Abfrage alle Maingroups, die mindestens einmal den kompletten Aufbau (Subgroup->Article_Group->Article) beinhalten, holen.
Was du suchst, nennt sich Nested Set - dabei möchtest du ggf. nohcmal dein Datenbankdesign überdenken. So wie ich dich verstehe brauchst du g_type zb garnicht da sich die Einordnung ja aus der Tiefe der Verschachtelung ergibt. Alles was keine Elterngruppe hat ist automatisch eine Hauptgruppe, alles zwischendrin eine Subgruppe und alle Gruppen die einen Artikel als Kind haben sind eine Artikelgruppe.
MySQL hält hierzu sogar einen Artikel bereit:
http://dev.mysql.com/tech-resources/articles/hierarchical-data.html