Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

तालिका खाली होने पर ही mysql सम्मिलित करें निष्पादित करें

आपके कथन में सिंटैक्स त्रुटि है:

INSERT INTO `statuses`
    (SELECT  'Something', 'Something else', 123
     WHERE NOT EXISTS (SELECT * FROM `statuses`)
    ) union all
    (SELECT 'Something', 'Something else', 234
     WHERE NOT EXISTS (SELECT * FROM `statuses`)
    );

आपको where the दोहराना होगा इस मामले में दो बार, प्रत्येक सबक्वेरी के लिए एक बार। आप यह भी कर सकते हैं:

INSERT INTO `statuses`
    select t.*
    from ((SELECT  'Something' as col1, 'Something else' as col2, 123 as col3
          ) union all
          (SELECT 'Something', 'Something else', 234
          )
         ) t
    WHERE NOT EXISTS (SELECT * FROM `statuses`);

इस संस्करण में, आपको स्तंभों को नाम निर्दिष्ट करने की आवश्यकता है।

या, आप केवल दो अलग-अलग सम्मिलित कथनों का उपयोग कर सकते हैं।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. docker-entrypoint-initdb में MySQL स्क्रिप्ट निष्पादित नहीं की जाती हैं

  2. समयक्षेत्र के साथ दिन के हिसाब से Django MySQL समूह

  3. Google ऐप स्क्रिप्ट JDBC/MySQL:आप थ्रेड त्रुटि के स्वामी नहीं हैं

  4. mysql रूट पासवर्ड कैसे रीसेट करें?

  5. MySQL में शून्य को 0 से बदलें