Detta verkar vara lämpligt för en UNION-resultatuppsättning. Så du måste få 2 frågor (en för varje "kriterier") och gå med i deras resultat med union.
Den första frågan skulle bli:
SELECT f1.user_id, f1.id AS file_id, SUM(f1.fileSize) AS totalSum
FROM files AS f1
WHERE f1.user_id = 1
GROUP BY f1.id
HAVING totalSum <= 350000;
Nu behöver du frågan som väljer om storleken är för stor:
SELECT f1.user_id, f1.id AS file_id, MAX(f1.fileSize) AS max
FROM files AS f1
WHERE f1.user_id = 1
GROUP BY f1.id
HAVING max >= 350000;
Därefter vill du kombinera dem i en enda fråga. Eftersom båda har samma fält kan du helt enkelt "förena" resultatet
SELECT f1.user_id, f1.id AS file_id, SUM(f1.fileSize) AS totalSum
FROM files AS f1
WHERE f1.user_id = 1
GROUP BY f1.id
HAVING totalSum <= 350000
UNION
SELECT f1.user_id, f1.id AS file_id, MAX(f1.fileSize) AS max
FROM files AS f1
WHERE f1.user_id = 1
GROUP BY f1.id
HAVING max >= 350000;
PS:Du hade "ON f1.id>=f2.id" som anslutningskriterier, inte säker på varför> det skulle vara väldigt fallspecifikt :)