Auf die Gefahr hin, mein Alleinunterhalter zu sein, hier meine Lösung (durch einfaches Umstellen):
SELECT SUM(files.filesize)
FROM jos_jpay_articles_hierarchy node
JOIN jos_jpay_files files ON node.articleid = files.articleid
WHERE node.id = 145 AND files.articleid = node.articleid OR files.articleid IN
(SELECT included.includedid
FROM jos_jpay_articles_hierarchy inode
JOIN jos_jpay_included included ON inode.articleid = included.articleid
WHERE inode.id = 145)
Dies ergibt die korrekte Summe von 4028296 und funktioniert auch, wenn keine Dateien inkludiert werden. Ich denke, ein Subquery ist geschwindigkeitstechnisch völlig vertretbar, oder ?
Vielen Dank an alle Helfenden !