Sqlserver
 sql >> डेटाबेस >  >> RDS >> Sqlserver

SQL सर्वर 2000:संयोजन एकत्रीकरण सबक्वेरी करने के लिए विचार

इन लेखों पर एक नज़र डालें:

http://dataeducation.com/rowset-string-concatenation- कौन-सी-विधि-सर्वश्रेष्ठ है/

http:// www.simple-talk.com/sql/t-sql-programming/concatenating-row-values-in-transact-sql/ (प्रतिक्रियाओं में फिल फैक्टर का क्रॉस जॉइन समाधान देखें - जो SQL Server 2000 में काम करेगा)

स्पष्ट रूप से SQL सर्वर 2005 में, फॉर एक्सएमएल ट्रिक सबसे आसान, सबसे लचीला और आम तौर पर सबसे अधिक प्रदर्शन करने वाला है।

जहाँ तक प्रत्येक पंक्ति के लिए एक रोसेट लौटाने की बात है, यदि आप अभी भी किसी कारण से ऐसा करना चाहते हैं, तो आप इसे एक संग्रहीत कार्यविधि में कर सकते हैं, लेकिन क्लाइंट को पहली पंक्ति में सभी पंक्तियों का उपभोग करने की आवश्यकता होगी और फिर अगले पर जाएँ रोसेट और इसे पहली पंक्ति में पहली पंक्ति के साथ संबद्ध करें, आदि। आपके एसपी को उसी सेट पर एक कर्सर खोलने की आवश्यकता होगी जो इसे पहली पंक्ति के रूप में लौटाया गया था और सभी चाइल्ड रोसेट उत्पन्न करने के लिए क्रम में कई चयनों को चलाने की आवश्यकता थी। यह एक ऐसी तकनीक है जिसे मैंने किया है, लेकिन केवल वहीं जहां सभी डेटा की वास्तव में आवश्यकता थी (उदाहरण के लिए, पूरी तरह से आबादी वाले ट्री व्यू में)।

और लोग जो कहते हैं, उसकी परवाह किए बिना, क्लाइंट-साइड करना अक्सर बैंडविड्थ की एक बहुत बड़ी बर्बादी होती है, क्योंकि सभी पंक्तियों को वापस करना और क्लाइंट साइड में लूपिंग और ब्रेकिंग करने का मतलब है कि शुरुआत में बड़ी संख्या में समान कॉलम स्थानांतरित किए जा रहे हैं। प्रत्येक पंक्ति को केवल पंक्ति के अंत में बदलते कॉलम को प्राप्त करने के लिए।

आप इसे कहीं भी करें, यह एक सूचित निर्णय . होना चाहिए आपके . पर आधारित केस का उपयोग करें।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. संग्रहीत प्रक्रिया नहीं मिल सका

  2. SQL सर्वर (T-SQL उदाहरण) में 'datetime2' को 'datetime' में बदलें

  3. XML डेटा को SQL सर्वर डेटाबेस कॉलम में विभाजित करने का सबसे अच्छा तरीका

  4. SQL प्रदर्शन:WHERE बनाम WHERE(ROW_NUMBER)

  5. मैं डेटाबेस कैसे संलग्न कर सकता हूं?