उस WHERE 1=2क्लॉज को क्लॉज में डालने का कारण SELECT INTOमौजूदा टेबल की फील्ड-कॉपी बनाना है जिसमें कोई डेटा नहीं है ।
यदि आपने ऐसा किया है:
select *
into Table2
from Table1
Table2Table1डेटा पंक्तियों सहित की एक सटीक डुप्लिकेट होगा । लेकिन अगर आप में निहित डेटा नहीं चाहते हैं Table1, और आप केवल तालिका संरचना चाहते हैं, तो आप WHEREसभी डेटा को फ़िल्टर करने के लिए एक खंड डालते हैं ।
BOL SELECT INTOसंदर्भ उद्धरण:
चयन करें ... INTO डिफ़ॉल्ट फ़ाइल समूह में एक नई तालिका बनाता है और इसमें क्वेरी से परिणामी पंक्तियाँ सम्मिलित करता है।
यदि आपके WHEREखंड में कोई परिणामी पंक्तियाँ नहीं हैं, तो कोई भी नई तालिका में सम्मिलित नहीं किया जाएगा: इसलिए, आप मूल तालिका के डुप्लिकेट स्कीमा को बिना किसी डेटा (जो इस मामले में वांछित परिणाम होगा) के साथ समाप्त करते हैं।
TOP (0)उदाहरण के लिए एक ही प्रभाव प्राप्त किया जा सकता है :
select top (0) *
into Table2
from Table1;
नोट : SELECT INTOस्रोत तालिका के अनुक्रमित, अड़चन, ट्रिगर या विभाजन स्कीमा की नकल नहीं करेगा।