SQL सर्वर मौजूदा तालिका में चयन करें




sql-server tsql (4)

मैं एक टेबल से कुछ फ़ील्ड चुनने की कोशिश कर रहा हूं और उन्हें संग्रहीत प्रक्रिया से मौजूदा तालिका में डाल सकता हूं। यहां मैं कोशिश कर रहा हूं:

SELECT col1, col2
INTO dbo.TableTwo 
FROM dbo.TableOne 
WHERE col3 LIKE @search_key

मुझे लगता है कि अस्थायी तालिकाओं के लिए चयन करना यही कारण है कि मुझे एक त्रुटि dbo.TableTwo जो dbo.TableTwo पहले से मौजूद है।

मैं dbo.TableOne से dbo.TableOne में एकाधिक पंक्तियों को कैसे सम्मिलित कर सकता हूं?


एक टेबल से दूसरी तालिका में डेटा सम्मिलित करने के दो अलग-अलग तरीके हैं।

मौजूदा तालिका के लिए - चयन में शामिल करें

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

----Create testable
CREATE TABLE TestTable (FirstName VARCHAR(100), LastName VARCHAR(100))
----INSERT INTO TestTable using SELECT
INSERT INTO TestTable (FirstName, LastName)
SELECT FirstName, LastName
FROM Person.Contact
WHERE EmailPromotion = 2
----Verify that Data in TestTable
SELECT FirstName, LastName
FROM TestTable
----Clean Up Database
DROP TABLE TestTable

गैर मौजूदा तालिका के लिए - में चयन करें

इस विधि का उपयोग तब किया जाता है जब तालिका पहले नहीं बनाई जाती है और जब किसी तालिका से डेटा को किसी अन्य तालिका से नव निर्मित तालिका में डाला जाना होता है तो उसे बनाने की आवश्यकता होती है। नई तालिका चयनित कॉलम के समान डेटा प्रकारों के साथ बनाई गई है।

----Create a new table and insert into table using SELECT INSERT
SELECT FirstName, LastName
INTO TestTable
FROM Person.Contact
WHERE EmailPromotion = 2
----Verify that Data in TestTable
SELECT FirstName, LastName
FROM TestTable
----Clean Up Database
DROP TABLE TestTable

रेफरी 1 2


यह नीचे दिए गए अनुसार काम करेगा:

insert into Gengl_Del Select Tdate,DocNo,Book,GlCode,OpGlcode,Amt,Narration 
from Gengl where BOOK='" & lblBook.Caption & "' AND DocNO=" & txtVno.Text & ""

SELECT ... INTO ... केवल तभी काम करता है जब INTO खंड में निर्दिष्ट तालिका मौजूद नहीं है - अन्यथा, आपको इसका उपयोग करना होगा:

INSERT INTO dbo.TABLETWO
SELECT col1, col2
  FROM dbo.TABLEONE
 WHERE col3 LIKE @search_key

यह मानता है कि dbo.TABLETWO में केवल दो कॉलम हैं - आपको अन्यथा कॉलम निर्दिष्ट करने की आवश्यकता है:

INSERT INTO dbo.TABLETWO
  (col1, col2)
SELECT col1, col2
  FROM dbo.TABLEONE
 WHERE col3 LIKE @search_key

select *
into existing table database..existingtable
from database..othertables....

यदि आपने पहले select * into tablename from other tablenames ही select * into tablename from other tablenames किया है, तो अगली बार, संलग्न करने के लिए, आप select * into existing table tablename from other tablenames







stored-procedures