अगर मैं दो प्रश्नोंस्तंभों की संख्या एक प्रश्न की गति को प्रभावित लौटे करता है?
SELECT Id, Forename, Surname
FROM Person
WHERE PersonName Like(‘%frank%’)
और
SELECT *
FROM Person
WHERE PersonName Like(‘%frank%’)
कौन सा क्वेरी तेजी से चलेंगे है? क्या क्लॉज/टेबल सबसे बड़ा कारक शामिल है, या कॉलम की संख्या लौटा दी गई है?
मैं पूछ रहा हूं क्योंकि मैं ऑब्जेक्ट्स की श्रृंखला बना रहा हूं जो डेटाबेस टेबल पर मैप करता है। आम तौर पर प्रत्येक वस्तु होगा कम से कम इन तीन तरीकों:
Select
- चुनता सब कुछ
List
- पर्याप्त का चयन करता है कि एक ड्रॉपडाउन सूची
Search
पॉप्युलेट करने के लिए इस्तेमाल किया जा सकता - सब कुछ है कि में देखी जा सकती है का चयन करता है परिणाम, आमतौर पर लगभग 6 या तो कॉलम।
यदि प्रत्येक क्वेरी कॉलम के एक ही सेट को वापस लौटाती है तो कोड के रखरखाव और परीक्षण को और अधिक छोटा होना चाहिए। डेटाबेस किसी भी तालिका में 50,000 पंक्तियां ऊपर प्राप्त करने के लिए की संभावना नहीं है, इसलिए यदि प्रदर्शन में अंतर छोटा है तो मैं विकास समय में बचत ले लेंगे। यदि प्रदर्शन मंजिल के माध्यम से गिरने जा रहा है, तो मैं एक अलग कोण से काम करूंगा।
तो, विकास की आसानी के लिए, SELECT *
समझदार है, या यह मूर्ख है?
बस थोड़ा सा व्याकरण: * एक क्वेरी की गति को प्रभावित करता है। –
http://xkcd.com/326/ – Quassnoi
विदेश नीति कुछ प्रभावित कर सकती है, लेकिन कई कॉलम – Andomar