UPDATE से प्राइस में से सेल्स टैक्स हटाना
जब स्टोर्ड प्राइस में 20% सेल्स टैक्स शामिल हो, तो मूल प्राइस निकालने के लिए 1.2 से विभाजित करें (क्योंकि 100% + 20% = 120% = 1.2)।
टेबल बनाना और डेटा इन्सर्ट करना
CREATE TABLE DemoTable (Price INT); INSERT INTO DemoTable VALUES(20); INSERT INTO DemoTable VALUES(40); INSERT INTO DemoTable VALUES(80); INSERT INTO DemoTable VALUES(60);
मौजूदा डेटा (टैक्स सहित)
+-------+ | Price | +-------+ | 20 | | 40 | | 80 | | 60 | +-------+
क्वेरी: 20% टैक्स हटाना
UPDATE DemoTable SET Price = Price / 1.2;
Query OK, 4 rows affected (0.11 sec) Rows matched: 4 Changed: 4 Warnings: 0
अपडेट के बाद डेटा
SELECT * FROM DemoTable;
+-------+ | Price | +-------+ | 17 | | 33 | | 67 | | 50 | +-------+
गणना विवरण
- 20 / 1.2 = 16.66... → 17 (इंटीजर राउंडिंग)
- 40 / 1.2 = 33.33... → 33
- 80 / 1.2 = 66.66... → 67
- 60 / 1.2 = 50.00 → 50
सटीक गणना के लिए DECIMAL उपयोग करें
-- टेबल स्ट्रक्चर बदलें ALTER TABLE DemoTable MODIFY Price DECIMAL(10,2); -- फिर अपडेट करें UPDATE DemoTable SET Price = Price / 1.2;
आउटपुट: 16.67, 33.33, 66.67, 50.00
सामान्य फॉर्मूला
टैक्स दर t% होने पर: मूल_प्राइस = स्टोर्ड_प्राइस / (1 + t/100)
- 18% GST:
Price / 1.18 - 5% टैक्स:
Price / 1.05 - 28% GST:
Price / 1.28
सिर्फ SELECT के लिए (डेटा बदले बिना)
SELECT Price, Price / 1.2 AS PriceWithoutTax FROM DemoTable;