2012-11-14 10 views
7

मैं साथ टाइपिंग किया गया था और वसा उंगली कुछ और जब में ऑपरेटर मैं एसक्यूएल विंडो में= * एसक्यूएल

=* 

टाइप किया (2008 SSMS एक 2005 सर्वर से जुड़ा) यह एक कीवर्ड के रूप नीला कर दिया।

मैं यह नहीं समझ सकता, या Google, यह क्या करता है। मुझे पता है * = लेकिन नहीं = *

यह ऑपरेटर क्या करता है?

+0

क्या कीबोर्ड पर किया था आप वसा उंगली "=" और "*" ?! –

+0

माना जाता था = (जैसा कि एक सेट स्टेटमेंट में एक सबक्वायरी शुरू करने के रूप में = ( – Mike

+0

का चयन करें [SQL सर्वर \ * = ऑपरेटर?] का संभावित डुप्लिकेट (http://stackoverflow.com/questions/983862/sql-server-operator) – rogerdeuce

उत्तर

18

=* सही बाहरी जोड़ों को लिखने का एक पुराना तरीका है। उदाहरण के लिए:

select * 
from A 
right outer join 
     B 
on  A.bid = B.id 

पुरानी शैली में लिखा की तरह है:

select * 
from A 
,  B 
where A.bid =* B.id 
+0

हल के रूप में चिह्नित करें :) – DWolf

+0

वाह। = = बाएं शामिल हों या दाएं शामिल हों? यह भी मजाकिया है जब मैं कथन लिखने की कोशिश करता हूं ---- क्वेरी गैर-एएनएसआई बाहरी जॉइन ऑपरेटर ("\ * = "या" = \ * ")। संशोधन के बिना इस क्वेरी को चलाने के लिए, कृपया संग्रहीत प्रक्रिया sp_dbcmptlevel का उपयोग कर मौजूदा डेटाबेस के लिए संगतता स्तर 80 या उससे कम पर सेट करें। एएनएसआई बाहरी जॉइन ऑपरेटरों का उपयोग करके क्वेरी को फिर से लिखने की दृढ़ता से अनुशंसा की जाती है (बाएं बाहरी जॉइन, दाएं बाहरी जॉइन)। SQL सर्वर के भविष्य के संस्करणों में, गैर-एएनएसआई जॉइन ऑपरेटरों को पिछड़े-संगतता मोड में भी समर्थित नहीं किया जाएगा। – Mike

+0

'* =' बाहरी शामिल हो गया है, और '= *' सही है बाहरी शामिल हो सिम्बेज दस्तावेज में पुराने वाक्यविन्यास को यहां http://manuals.sybase.com/onlinebooks/group-as/asg1250e/sqlug/@ebt-link;pt=11971?target=%25N%15_13070_START_RESTART_N%25 मिल सकता है। SQL सर्वर और Sybase एक ही उत्पाद के रूप में शुरू किया – Andomar