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

MySQL में कॉलम में से किसी एक पर चयन के आधार पर सम्मिलित किया जा सकता है?

INSERT...SELECT आज़माएं बयान

INSERT INTO student_fees(id, name, fees) 
SELECT ... -- put here the SELECT STATEMENT with condition

यदि आपका कॉलम ID auto incremented है , आपको 1 . निर्दिष्ट करने की आवश्यकता नहीं है अन्यथा यह आपको एक त्रुटि देगा।

INSERT INTO student_fees(name, fees) 
SELECT `name`, '200$' 
FROM students         -- this will select all students on the table
                      -- and add $200 on thier fees.

दूसरी बात यह है कि यदि आप student . से केवल एक कॉलम सम्मिलित करना चाहते हैं तालिका में, आपको शर्त निर्दिष्ट करने की आवश्यकता है, इसलिए आपको बाधा त्रुटि नहीं मिलेगी (मान लें कि आपकी कॉलम आईडी प्राथमिक कुंजी है )

INSERT INTO student_fees(name, fees) 
SELECT `name`, '200$' 
FROM   students
WHERE  columnName = 'blahBlah'

अपडेट 1

आपकी टिप्पणी देखकर, आपके पास यह प्रश्न है

INSERT INTO coupon_allotment (page_id, offer_id, coupon_code, user_id) 
SELECT page_id, 4, 'ABC'        -- number of columns mismatch, right?
FROM pages_discounts_association 
WHERE discount_id = 4

आपको निकालने के लिए need की आवश्यकता है user_id ऊपर कॉलम या आपको जोड़ने के लिए चाहिए एक ID कॉलम की संख्या से मेल खाने के लिए अपने चयन कथन में।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. मारियाडीबी/माईएसक्यूएल डेटाबेस पर एसक्यूएल निर्भरता

  2. प्रासंगिक मूल्यों को खोए बिना दो तालिकाओं में शामिल हों

  3. कैसे जांचें कि ईमेल पहले से पंजीकृत है या नहीं?

  4. मेरी docker-entrypoint-initdb.d स्क्रिप्ट (जैसा कि docker-compose.yml में निर्दिष्ट है) को एक ताज़ा MySQL इंस्टेंस प्रारंभ करने के लिए निष्पादित क्यों नहीं किया गया है?

  5. केकेपीएचपी:वेबसर्वर पर नहीं खुल रही साइट माइग्रेशन समस्या स्थानीयहोस्ट पर ठीक काम करती है