इस लेख में मूल SQL INSERT
शामिल है बयान जो शुरुआती अपने डेटाबेस टेबल में डेटा डालने के लिए उपयोग कर सकते हैं।
मूल सिंटैक्स
SQL में डेटा डालने का मूल सिंटैक्स इस प्रकार है:
INSERT INTO TableName (Column1, Column2, Column3, ...)
VALUES (Value1, Value2, Value3, ...);
कहां:
TableName
उस तालिका का नाम है जिसमें आप डेटा सम्मिलित करना चाहते हैंColumn1
, आदि उन स्तंभों के नाम हैं जिनमें आप डेटा सम्मिलित करना चाहते हैंValue1
, आदि वे मान हैं जिन्हें आप उन स्तंभों में सम्मिलित कर रहे हैं। इन मानों का क्रम उस क्रम से मेल खाना चाहिए जिसमें आपने कॉलम सूचीबद्ध किए हैं (यानीValue1
Column1
में जाता है , आदि)।
यदि आप सभी स्तंभों में मान सम्मिलित कर रहे हैं, तो आप स्तंभ नामों को छोड़ सकते हैं। उस स्थिति में, आप निम्न सिंटैक्स का उपयोग कर सकते हैं:
INSERT INTO TableName
VALUES (Value1, Value2, Value3, ...);
ध्यान दें कि कुछ DBMS इससे अधिक जटिल सिंटैक्स का उपयोग करते हैं (अर्थात वे अधिक विकल्प प्रदान करते हैं), लेकिन यह आमतौर पर एक तालिका में डेटा सम्मिलित करने के लिए आवश्यक मूल सिंटैक्स होता है।
सभी कॉलम में डालें
यहां एक बुनियादी उदाहरण दिया गया है जो तालिका के सभी स्तंभों में डेटा सम्मिलित करता है:
INSERT INTO PetTypes
VALUES( 1, 'Bird' );
इस मामले में, PetTypes
. में दो कॉलम होते हैं तालिका, और हम दोनों स्तंभों में मान सम्मिलित कर रहे हैं, इसलिए, हमें स्तंभ नाम निर्दिष्ट करने की आवश्यकता नहीं है।
उपरोक्त कथन ऐसा करने जैसा ही है:
INSERT INTO PetTypes( PetTypeId, PetType )
VALUES( 1, 'Bird' );
हम SELECT
. चलाकर अपने डेटा की जांच कर सकते हैं बयान।
SELECT * FROM PetTypes;
परिणाम:
+-------------+-----------+ | PetTypeId | PetType | |-------------+-----------| | 1 | Bird | +-------------+-----------+
कुछ कॉलम में डालें
यहां एक बुनियादी उदाहरण दिया गया है जो तालिका के कुछ स्तंभों में डेटा सम्मिलित करता है:
INSERT INTO Users( UserId, FirstName, LastName )
VALUES( 1, 'Lansell', 'Letterman' );
इस तालिका में वास्तव में चार कॉलम हैं, लेकिन हम उनमें से केवल तीन कॉलम में डेटा सम्मिलित करते हैं। हम देख सकते हैं कि जब हम SELECT
. चलाते हैं डेटा डालने के बाद तालिका के सामने बयान।
SELECT * FROM Users;
परिणाम:
+----------+-------------+------------+-----------------------------+ | UserId | FirstName | LastName | DateInserted | |----------+-------------+------------+-----------------------------| | 1 | Lansell | Letterman | 2020-11-21 05:18:50.0029455 | +----------+-------------+------------+-----------------------------+
गलत क्रम में मान कैसे डालें
कॉलम सूची विधि आपको उस डेटा को सम्मिलित करने में सक्षम बनाती है जो उसी क्रम में नहीं है:
INSERT INTO Users( LastName, FirstName, UserId )
VALUES( 'Pitt', 'Bart', 2 );
इस उदाहरण में मैंने स्तंभों के क्रम और उनके संबंधित मानों को पुनर्व्यवस्थित किया है। सौभाग्य से, कॉलम सूची DBMS को मार्गदर्शन प्रदान करती है कि प्रत्येक मान को कहाँ डाला जाना चाहिए।
तो अब, अगर हम अपना डेटा चुनते हैं, तो हम देखेंगे कि इसे सही कॉलम में डाला गया है।
SELECT * FROM Users;
परिणाम:
+----------+-------------+------------+-----------------------------+ | UserId | FirstName | LastName | DateInserted | |----------+-------------+------------+-----------------------------| | 1 | Lansell | Letterman | 2020-11-21 05:18:50.0029455 | | 2 | Bart | Pitt | 2020-11-21 05:30:07.4456867 | +----------+-------------+------------+-----------------------------+
प्रश्न का परिणाम सम्मिलित करें
किसी क्वेरी के परिणाम सेट को तालिका में सम्मिलित करना भी संभव है। इसके साथ आप कुछ दृष्टिकोण अपना सकते हैं।
INSERT INTO... SELECT
. का उपयोग करें बयान। इस मामले में, क्वेरी परिणाम सेट करने से पहले, आपको पहले तालिका बनानी होगी।- CREATE TABLE… AS Select Statement का उपयोग करें। यह विधि स्वचालित रूप से क्वेरी के परिणाम सेट के आधार पर एक नई तालिका बनाती है, फिर उन परिणामों को तालिका में सम्मिलित करती है। हालांकि यह विधि SQL मानक के अनुरूप है, यह सभी DBMS द्वारा समर्थित नहीं है।
SELECT INTO
का उपयोग करें बयान। यह पिछले विकल्प के समान है। यह स्वचालित रूप से क्वेरी के परिणाम सेट के आधार पर एक नई तालिका बनाता है, फिर उन परिणामों को तालिका में सम्मिलित करता है। यदि पिछली विधि (CREATE TABLE ... AS SELECT
) आपके डीबीएमएस द्वारा समर्थित नहीं है, इस विधि को आजमाएं।