मुझे लगता है कि आपकी तालिका का नाम tbl है।
INSERT INTO tbl (campoX )
SELECT 'X' FROM DUAL
WHERE NOT EXISTS(
SELECT campoX from tbl
WHERE campoX ='X'
);
DUAL
विशुद्ध रूप से उन लोगों की सुविधा के लिए है, जिन्हें यह आवश्यक है कि सभी SELECT कथनों में FROM और संभवतः अन्य खंड होने चाहिए। MySQL क्लॉज को नजरअंदाज कर सकता है। यदि कोई तालिका संदर्भित नहीं है, तो MySQL को FROM DUAL की आवश्यकता नहीं है।
जैसा कि कुछ अन्य ने उल्लेख किया है, आप INSERT IGNORE
. का उपयोग कर सकते हैं यहां कथन यदि आपका कैंपोक्स एक यूनिग्यू या प्राथमिक कुंजी फ़ील्ड है।