Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में INSERT, VALUES और SELECT को कैसे संयोजित करें?

INSERT ... SELECT सिंटैक्स के साथ कॉलम मैपिंग

आप एक टेबल से चुनकर दूसरी टेबल में डाल सकते हैं, कॉलम नामों को स्पष्ट रूप से मैप करके।

सिंटैक्स

INSERT INTO targetTable (col1, col2, ...)
SELECT col1, col2, ... FROM sourceTable WHERE condition;

उदाहरण

mysql> CREATE TABLE CombiningInsertValuesSelect (
    -> EmployeeId VARCHAR(10), EmployeeName VARCHAR(100), EmployeeAge INT
    -> );
mysql> CREATE TABLE getAllValues (Id VARCHAR(100), Name VARCHAR(100), Age INT);
mysql> INSERT INTO getAllValues VALUES
    -> ('EMP-1','John',26), ('EMP-2','Carol',22), ('EMP-3','Sam',24),
    -> ('EMP-4','David',27), ('EMP-5','Bob',21);

शर्त के साथ चुनिंदा रिकॉर्ड डालें:

mysql> INSERT INTO CombiningInsertValuesSelect (EmployeeId, EmployeeName, EmployeeAge)
    -> SELECT Id, Name, Age FROM getAllValues WHERE Id = 'EMP-4';

परिणाम:

mysql> SELECT * FROM CombiningInsertValuesSelect;
+------------+--------------+-------------+
| EmployeeId | EmployeeName | EmployeeAge |
+------------+--------------+-------------+
| EMP-4      | David        | 27          |
+------------+--------------+-------------+

नोट: कॉलम क्रम और डेटा प्रकार संगत होने चाहिए। VALUES क्लॉज यहां उपयोग नहीं किया जाता।

  1. - MySQL में INSERT ... SELECT क्वेरी का उपयोग कैसे करें?

    MySQL में INSERT ... SELECT स्टेटमेंट एक ही क्वेरी में एक तालिका से दूसरी तालिका में डेटा कॉपी करने या मानों की गणना करके डालने की अनुमति देता है। सिंटैक्स INSERT INTO target_table (col1, col2, col3, ...) SELECT col1, col2, col3, ... FROM source_table WHERE condition; उदाहरण: मानों को सीधे चुनकर ड

  1. - MySQL में LPAD और INSERT INTO SELECT का उपयोग करके अग्रणी शून्य के साथ मान डालें

    MySQL में अग्रणी शून्य के साथ क्रमिक ID उत्पन्न करना LPAD() फ़ंक्शन और INSERT INTO SELECT का उपयोग करके आप एक कॉलम में अग्रणी शून्य के साथ स्वरूपित मान (जैसे 001, 002, 003) स्वचालित रूप से उत्पन्न और डाल सकते हैं। टेबल बनाना ); Query OK, 0 rows affected (0.00 sec) LPAD के साथ INSERT INTO SELECT क

  1. - MySQL में अल्पविराम-पृथक सूची में स्ट्रिंग और अगला अक्षर खोजने के लिए रेगेक्स

    समाधान REGEX के बजाय FIND_IN_SET() फंक्शन का उपयोग करें, जो अल्पविराम-पृथक सूची के लिए बनाया गया है। सिंटैक्स SELECT * FROM yourTableName WHERE FIND_IN_SET(anyValue, yourColumnName); उदाहरण टेबल बनाएं: INSERT INTO demo17 (first_name, value) VALUES (John,50), (David,), (Adam,50,89), (Adam,49,89,43