दृश्य प्रदर्शन के लिए हानि हो सकता है जब दृश्य में तर्क, कॉलम, पंक्तियां या सारणी होती हैं जो अंततः आपकी अंतिम क्वेरी द्वारा उपयोग नहीं की जाती हैं। मैं आपको बता नहीं सकता कि कितनी बार मैं जैसे सामान को देखा है:
SELECT ...
FROM (View with complex UNION of ActiveCustomer and InactiveCustomer tables)
WHERE Active = True
, या
SELECT (one column)
FROM (view that returns 50 columns)
(इस प्रकार सभी पंक्तियां InactiveCustomer मेज से देखने में शामिल थे को छान) (SQL डेटा कि बाद में किसी कदम पर त्याग दिया जाता है की बहुत सारी पुनः प्राप्त करने की है। इसके संभव उन अन्य स्तंभों को पुनः प्राप्त करने महंगा, एक बुकमार्क देखने के माध्यम से की तरह) कर रहे हैं, या
SELECT ...
FROM (view with complex filters)
WHERE (entirely different filters)
(इसकी संभावना एसक्यूएल हो सकता है एक और अधिक उचित सूचकांक अगर टेबल सीधे पूछे गए थे), या
SELECT (only fields from a single table)
FROM (view that contains crazy complex joins)
(में शामिल होने के माध्यम से सीपीयू भूमि के ऊपर के बहुत सारे, और अनावश्यक आईओ इस्तेमाल किया तालिका के लिए पढ़ता है बाद में उन्हें छोड़ दिया जाता है कि), या मेरी पसंदीदा:
SELECT ...
FROM (Crazy UNION of 12 tables each containing a month of data)
WHERE OrderDate = @OrderDate
(12 टेबल पढ़ता है जब इसे केवल पढ़ने की आवश्यकता होती है 1)।
में मामलों में, एसक्यूएल "कवर के माध्यम से देखने" के लिए पर्याप्त स्मार्ट है और वैसे भी एक प्रभावी क्वेरी योजना के साथ आता है। लेकिन अन्य मामलों में (विशेष रूप से बहुत ही जटिल), यह नहीं कर सकता है। उपर्युक्त स्थितियों में से प्रत्येक में, जवाब को हटाने और इसके बजाय अंतर्निहित तालिकाओं को क्वेरी करना था।
बहुत कम (यहां तक कि अगर आपको लगता है एसक्यूएल बहुत चालाक वैसे भी यह अनुकूलन करने के लिए किया जाएगा), दृश्य को नष्ट कभी कभी अपनी खुद की जिज्ञासा त्रुटि और अनुकूलन आसान बनाने के कर सकते हैं (एक सा और अधिक स्पष्ट क्या किया जाना चाहिए) ।
+1 मेरे अनुभव में अज्ञानता और डाटाबेस विचारों के बारे में गलत सूचना के एक अविश्वसनीय राशि है। विचारों के बारे में बहुत सी चर्चा हो सकती है और कैसे, लेकिन मुझे यकीन नहीं है कि वे इस तरह तैयार हैं और यदि उत्तर स्पष्ट हैं। –
@ एमआर शॉब्स - मुझे लगता है कि लोग यहां प्रश्न पूछते हैं, भले ही उत्तर आसानी से गुम हो जाए, क्योंकि वे अंतःक्रियाशीलता और अनुवर्ती/क्यू एंड ए चाहते हैं जो एसओ प्रदान करता है, और मुझे नहीं लगता कि हमें इसे हतोत्साहित करना चाहिए। – JNK
@ पॉल - मुझे इसे हराया! – JNK