तथ्य यह है कि आपके पास एक ही सर्वर पर दो डेटाबेस हैं और एक ही डेटा सेट के साथ (जैसा आपने कहा) समान निष्पादन योजना सुनिश्चित नहीं करता है।
क्वेरी योजना भिन्न होने के कुछ कारण यहां दिए गए हैं:
- mdf और ldf फाइलें (प्रत्येक डेटाबेस के लिए) अलग-अलग ड्राइव पर हैं। अगर onedrives तेज है, तो वह डेटाबेस क्वेरी को भी तेजी से चलाएगा।
- रुके हुए आँकड़े। यदि आपके पास एक डेटाबेस है जिसमें दूसरे की तुलना में नए आँकड़े हैं, तो SQL के पास एक उचित (और
तेज़) निष्पादन योजना चुनने की बेहतर संभावना है। - इंडेक्स:मुझे पता है कि आपने कहा था कि वे दोनों एक जैसे हैं, लेकिन मैं जांचता हूं कि क्या आपके पास दोनों पर एक ही तरह के इंडेक्स हैं।
यह देखने पर ध्यान दें कि क्वेरी धीमी क्यों चल रही है या तुलना करने के बजाय वास्तविक निष्पादन योजना देखें। धीमी क्वेरी के लिए वास्तविक निष्पादन योजना की जाँच करने से आपको इस बात का संकेत मिलेगा कि धीमी गति से क्यों चल रहा है।
साथ ही, मैं इस मुद्दे को ठीक करने के लिए कोई लॉक स्टेटमेंट नहीं जोड़ूंगा। मेरे अनुभव में, सबसे धीमी क्वेरी को कोड या इंडेक्स के माध्यम से ट्यून किया जा सकता है, न कि कोई लॉक संकेत जोड़ने के बजाय जो आपके लेनदेन के आधार पर आपको संशोधित या पुराने परिणाम सेट प्राप्त कर सकता है।