Da Sie Oracle verwenden, sollten Sie AVG() als analytische (Fenster-)Funktion verwenden können:
SELECT id, m_name AS "Mobile Name" cost AS Price, AVG(cost) OVER( ) AS Average
, cost - AVG(cost) OVER ( ) AS Difference
FROM mobile
Keine Notwendigkeit für Unterabfragen oder GROUP BY.