मैं निम्न क्वेरी लिखना चाहते करने के लिए मिन समेकित फ़ंक्शन आवेदन:थोड़ा क्षेत्र
SELECT ..., MIN(SomeBitField), ...
FROM ...
WHERE ...
GROUP BY ...
समस्या यह है, एसक्यूएल सर्वर यह पसंद नहीं करता, जब मैं थोड़ा के न्यूनतम मूल्य की गणना करना चाहते हैं फ़ील्ड यह त्रुटि Operand data type bit is invalid for min operator
देता है।
मैं निम्नलिखित तरीके को इस्तेमाल कर सकते हैं:
SELECT ..., CAST(MIN(CAST(SomeBitField AS INT)) AS BIT), ...
FROM ...
WHERE ...
GROUP BY ...
लेकिन, वहाँ कुछ और अधिक सुरुचिपूर्ण है? (उदाहरण के लिए, एक समग्र कार्य हो सकता है, जिसे मैं नहीं जानता, और यह फ़ील्ड में बिट मानों के तार्किक and
का मूल्यांकन करता है।)
@Adam रॉबिन्सन: जाहिर है, 'ओपेरैंड डेटा प्रकार बिट मिनट के लिए अमान्य है operator.' – Andomar
के बारे में और अधिक सुरुचिपूर्ण पता नहीं है लेकिन यह एक * थोड़ा * कम है। 'कास्ट (न्यूनतम (कुछ बिटफिल्ल्ड + 0) बिट के रूप में)' –
@Andomar: जाहिर है अगर आप पहले से ही समस्या को जानते हैं, हाँ, लेकिन समान मुद्दों वाले अन्य लोग * त्रुटि संदेश * पर खोज सकते हैं, इसलिए इस तरह की जानकारी में होना आवश्यक है सवाल। –