これはあなたの質問です:
SELECT p.title, COUNT(t.qty) AS total
-------^
FROM payments t LEFT JOIN
products AS p
ON p.id = t.item
WHERE t.user = 1
GROUP BY t.item
---------^
ORDER BY t.created DESC;
---------^
指摘された場所には問題があります。 SELECTに注意してください およびGROUP BY 別の列を参照しています。 LEFT JOINで 、あなたは(ほとんど)常に最初ので何かによって集約したいと思っています 2番目ではなくテーブル。
ORDER BY 別の問題です。この列で集計していないため、必要な値を決定する必要があります。 MIN()を推測しています またはMAX() :
SELECT p.title, COUNT(t.qty) AS total
FROM payments t LEFT JOIN
products AS p
ON p.id = t.item
WHERE t.user = 1
GROUP BY p.title
ORDER BY MAX(t.created) DESC;
そのCOUNT(t.qty)も追加します 疑わしいです。通常、qty 「数量」を指し、必要なのは合計です:SUM(t.qty) 。