How do I exclude null rows without excluding null cells when pulling Excel into C# using SQL (ADO)? -
मेरे पास निम्न की तरह कोई क्वेरी है:
SELECT * FROM OPENROWSET ('MSDASQL', 'चालक = {माइक्रोसॉफ्ट एक्सेल चालक (*। एक्सएलएस)}; डीबीक्यू = डी: \ टेस्ट.क्क्स ',' सेलेक्ट * से शीट 1 $] ')
ये उन पंक्तियों को वापस लाता है जो सभी नल हैं यदि वे कभी भी थे संपादित और फिर हटा दिया मैं उन लोगों को बाहर करना चाहता हूं, लेकिन फिर भी उन पंक्तियों में शामिल हैं जिनके पास अच्छा डेटा है लेकिन संभवतः रिक्त कोशिकाएं हैं।
मेरी पहली प्रवृत्ति थी "WHERE प्रत्येक स्तंभ नहीं है" और ऐसा एक साथ, जैसा है:
<पूर्व> SELECT * ओपनओवॉसेट ('एमएसडीएएसयूकल', 'ड्रायवर = {माइक्रोसॉफ्ट एक्सेल ड्रायवर (*। एक्सएलएस)}; डीबीक्यू = डी: \ टेस्ट.क्क्स', 'सेलेक्ट * से शीट 1 $]') WHERE (कॉल 1 आईएस यह शून्य और कॉल 2 नहीं है और कॉल 3 शून्य नहीं है और कॉल 4 शून्य नहीं है)यह प्रभावी ढंग से रिक्त पंक्तियों को समाप्त करता है, लेकिन किसी कारण से, यह भी एक पंक्ति को समाप्त कर देता है जहां Col4 एक रिक्त प्रविष्टि थी मैंने इसे WHERE खंड के साथ और बिना पैरों के लिए करने की कोशिश की।
क्या कोई भी देखता है कि मैं गलत क्या कर रहा हूं, या उसके बदले, एक अलग पद्धति का सुझाव है जो मैं उसी परिणाम प्राप्त करने के लिए उपयोग कर सकता हूं ?
यह वर्तमान में एडीओ द्वारा सी # में लागू किया जा रहा है, लेकिन मैं SQL सर्वर प्रबंधन स्टूडियो 2008 का उपयोग कर क्वेरी का परीक्षण कर रहा हूं।
WHERE (कॉल 1 शून्य नहीं है या कॉल 2 नहीं है या कॉल 3 नहीं है या कॉल 4 नहीं है)
या
WHERE Coalesce (Col1, Col2, Col3, Col4) शून्य स्ट्राइक> नहीं है (ओलेब / एक्सेल के लिए कोई एकत्र समारोह नहीं)
Comments
Post a Comment