क्या हमारे पास एक ही तालिका के लिए एकाधिक उपनाम नाम हो सकते हैं?तालिका के लिए एकाधिक उपनाम नाम
उत्तर
हां। आप च आप एक तालिका एक पदानुक्रम भंडारण है उदाहरण के लिए एक self join, के लिए ऐसा करने की जरूरत:
:create table Foo (
FooID int
,ParentFooID int
,[columns]
)
आप एक माता पिता के बच्चे की तरह एक प्रश्न के साथ एक विशेष स्थिति को संतुष्ट पाने के लिए शामिल होने के लिए कर सकते हैं
Select b.*
from Foo a
join Foo b
on a.FooID = b.ParentFooID
and [some condition filtering a]
+1! –
लेकिन यह प्रदर्शन को प्रभावित करेगा या नहीं? –
क्वेरी ऑप्टिमाइज़र को शामिल होने के लिए आवश्यक कुछ भी करना होगा। उदाहरण के लिए, यदि तालिका बड़ी है और ParentFooID पर एक अनुक्रमणिका है, तो इसे शायद FooID - ParentFooID में शामिल होने के लिए इंडेक्स लुकअप करना होगा। मैच करने में हमेशा कुछ संसाधन शामिल होंगे। – ConcernedOfTunbridgeWells
नहीं, एक ही टेबल पर नहीं, लेकिन आप एक ही टेबल को दो बार चुन सकते हैं और प्रत्येक को अलग-अलग उपनाम दे सकते हैं।
SELECT alias1.*, alias2.*
FROM mytable alias1, mytable alias2
यह आपको एक ही क्वेरी के भीतर एक ही उद्देश्य के लिए एक ही तालिका का उपयोग करने की अनुमति देगा।
लेकिन यह प्रदर्शन को प्रभावित करेगा या नहीं? –
हां, यदि आप दो बार तालिका का चयन करते हैं तो उसे दो गुना अधिक काम करना होगा। प्रदर्शन इस बात पर निर्भर करेगा कि उनका उपयोग कैसे किया जाता है, वे दो में शामिल होते हैं और क्वेरी ऑप्टिमाइज़र के लिए उपलब्ध इंडेक्स और आंकड़े। –
चूंकि क्रिस की क्वेरी में कोई शर्त नहीं है (अंतर्निहित या अन्वेषण) एक कार्टशियन शामिल होने की अपेक्षा की जाएगी - यानी। तालिका में प्रत्येक पंक्ति को एक ही तालिका में सभी पंक्तियों से जोड़ा जाएगा, इसलिए यदि आपके पास तालिका में 20 पंक्तियां थीं तो आपका परिणाम 400 पंक्तियां होगी! यह दो गुना ज्यादा काम से भी बदतर है। हालांकि, यह उपनाम नहीं है जो काम कर रहे हैं - यह कार्टशियन शामिल है। –
- 1. SQL तालिका उपनाम
- 2. पैकेज का नाम उपनाम या उपनाम
- 3. एक उपनाम कॉलम नाम
- 4. डाटाबेस नाम के लिए एसक्यूएल समानार्थी या "उपनाम" कैसे बनाएं?
- 5. तालिका नाम या तालिका उपनाम जोड़ने के बिना "प्रश्न में अस्पष्ट क्षेत्र" से कैसे बचें, जहां
- 6. हास्केल डेटा प्रकार उपनाम नाम
- 7. एक साइट के लिए एकाधिक डोमेन: उपनाम या रीडायरेक्ट?
- 8. FQL कॉलम नाम "AS" उपनाम
- 9. विभाजन पूर्व नाम और उपनाम
- 10. समान तालिका में एकाधिक कॉलम के लिए आंतरिक शामिल हों
- 11. Django syncdb तालिका के लिए कस्टम नाम
- 12. शर्तों के लिए एकाधिक तालिका के साथ SQL क्वेरी
- 13. गलत तालिका उपनाम का उपयोग करके NHibernate
- 14. MySQL और PHP - अद्वितीय तालिका/उपनाम
- 15. तालिका नाम
- 16. तालिका नाम
- 17. कई आदेशों के लिए एलएलडीबी उपनाम एक
- 18. सी ++ टेम्पलेट के लिए उपनाम?
- 19. उपनाम
- 20. स्टेटमेंट से हटाए गए उपनाम में उपनाम
- 21. रेल पोस्टग्रेस्क्ल एकाधिक स्कीमा और एक ही तालिका का नाम
- 22. इकाई नाम बनाम तालिका नाम
- 23. सी #: कक्षाओं के लिए "उपनाम" कैसे बनाएं
- 24. एसक्यूएल में एक टेबल नाम उपनाम देने के लिए कब आवश्यक है?
- 25. सीएसएस में फोंट के लिए उपनाम
- 26. एक्सेस एसक्यूएल में कॉलम उपनाम में तालिका नाम का उपयोग कैसे कर सकता हूं?
- 27. MySQL एकाधिक तालिका ताले
- 28. एकाधिक तालिका WHERE क्लॉज
- 29. तालिका एकाधिक group_concat
- 30. तालिका नाम चर
आप क्यों चाहेंगे? क्या आपके पास एक विशिष्ट क्वेरी है जो काम नहीं करती है? –
आपको इसकी आवश्यकता के लिए क्या करना है? –
स्वयं भूमिकाएं या टेबल जो कई भूमिकाओं में रहते हैं। उत्तरार्द्ध का एक उदाहरण एक दिनांक आयाम तालिका हो सकती है जो उस पर कई तिथियों के साथ एक तथ्य तालिका में शामिल हो जाती है। – ConcernedOfTunbridgeWells