REPLACE() फंक्शन से ईमेल डोमेन मास्क करना
डेटाबेस में स्टोर्ड ईमेल एड्रेस का डोमेन भाग (जैसे @gmail.com) किसी दूसरे डोमेन (जैसे @amz.com) से बदलने के लिए REPLACE() फंक्शन का उपयोग करें।
टेबल बनाना और डेटा इन्सर्ट करना
CREATE TABLE DemoTable1345 (UserEmailAddress TEXT);
INSERT INTO DemoTable1345 VALUES('Carol123@gmail.com');
INSERT INTO DemoTable1345 VALUES('987Sam@gmail.com');
INSERT INTO DemoTable1345 VALUES('David_Miller@gmail.com');
INSERT INTO DemoTable1345 VALUES('Bob@gmail.com');
मौजूदा डेटा
+------------------------+ | UserEmailAddress | +------------------------+ | Carol123@gmail.com | | 987Sam@gmail.com | | David_Miller@gmail.com | | Bob@gmail.com | +------------------------+
क्वेरी: डोमेन बदलना
UPDATE DemoTable1345 SET UserEmailAddress = REPLACE(UserEmailAddress, '@gmail.com', '@amz.com');
Query OK, 4 rows affected (0.18 sec) Rows matched: 4 Changed: 4 Warnings: 0
अपडेट के बाद डेटा
SELECT * FROM DemoTable1345;
+----------------------+ | UserEmailAddress | +----------------------+ | Carol123@amz.com | | 987Sam@amz.com | | David_Miller@amz.com | | Bob@amz.com | +----------------------+
केवल SELECT के लिए (डेटा बदले बिना)
SELECT REPLACE(UserEmailAddress, '@gmail.com', '@amz.com') AS MaskedEmail FROM DemoTable1345;
एकाधिक डोमेन हैंडल करना
UPDATE DemoTable1345
SET UserEmailAddress = REPLACE(
REPLACE(UserEmailAddress, '@gmail.com', '@masked.com'),
'@yahoo.com', '@masked.com'
);
रेगुलर एक्सप्रेशन विकल्प (MySQL 8.0+)
UPDATE DemoTable1345 SET UserEmailAddress = REGEXP_REPLACE(UserEmailAddress, '@[^@]+$', '@masked.com');
यह किसी भी डोमेन को @masked.com से बदल देता है।
सुरक्षा नोट
- प्रोडक्शन डेटा पर सीधे UPDATE न करें; पहले बैकअप लें
- टेस्ट/डेव वातावरण में डेटा मास्किंग के लिए उपयुक्त
- GDPR/गोपनीयता अनुपालन के लिए उचित अनामिकीकरण तकनीकों का उपयोग करें