चूंकि आप Oracle का उपयोग कर रहे हैं, इसलिए आपको AVG() को एक विश्लेषणात्मक (विंडो) फ़ंक्शन के रूप में उपयोग करने में सक्षम होना चाहिए:
SELECT id, m_name AS "Mobile Name" cost AS Price, AVG(cost) OVER( ) AS Average
, cost - AVG(cost) OVER ( ) AS Difference
FROM mobile
सबक्वायरी या ग्रुप बाय की जरूरत नहीं है।