मैंने यह प्रश्नोत्तरी http://www.sql-ex.ru/ पर किया है, प्रश्न 35 सटीक होने के लिए।टी-एसक्यूएल, संख्यात्मक मान
प्रश्न इस प्रकार है: उत्पाद तालिका में, उन मॉडलों को निर्धारित करें जिनमें केवल अंक या केवल लैटिन अक्षरों (ए-जेड, केस असंवेदनशील) शामिल हैं। परिणाम सेट: मॉडल, मॉडल का प्रकार।
और मैं सही जवाब है जो दिया:
SELECT model,
type
FROM Product
WHERE Model NOT LIKE '%[^A-Z]%'
OR Model NOT LIKE '%[^0-9]%'
अब मेरे सवाल का कारण है कि मैं डबल negations यह काम करने की आवश्यकता है है। अगर मैं करने के लिए कोड को फिर से लिखने:
SELECT model,
type
FROM Product
WHERE Model LIKE '%[A-Z]%'
OR Model LIKE '%[0-9]%'
मैं गलत जवाब मिलता है: आपकी क्वेरी पहले (उपलब्ध) डेटाबेस पर सही डाटासेट लौट आए, लेकिन यह दूसरी जाँच डेटाबेस पर गलत डाटासेट लौट आए। * रिकॉर्ड्स की गलत संख्या (37 से अधिक)
कोड का पहला उदाहरण सही जवाब देता है जबकि दूसरा उदाहरण नहीं है?
मैंने उत्तर खोजने की कोशिश की है लेकिन कोई भाग्य नहीं है। एक स्पष्टीकरण के लिए आभारी।
ठीक मार्टिन, आप अपने जवाब के लिए बहुत बहुत धन्यवाद – user3197410