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

Mysql का उपयोग करके एक तालिका से दूसरी तालिका में लापता रिकॉर्ड डालें

LEFT OUTER JOIN का उपयोग करना भी संभव है उस के लिए। यह सबक्वेरी ओवरहेड से बच जाएगा (जब सिस्टम प्रत्येक . के लिए एक बार सबक्वेरी निष्पादित कर सकता है) बाहरी क्वेरी का रिकॉर्ड) जैसे जॉन वू के उत्तर में, और पहले से मौजूद 800 रिकॉर्ड जैसे कि user2340435 के एक में अनावश्यक काम करने से बचेंगे:

INSERT INTO b
SELECT a.* FROM a
LEFT OUTER JOIN b ON b.id = a.id
WHERE b.id IS NULL;

यह सबसे पहले A . से सभी पंक्तियों का चयन करेगा और B दोनों तालिकाओं के सभी स्तंभों सहित तालिकाएँ, लेकिन उन पंक्तियों के लिए जो A . में मौजूद हैं और B . में मौजूद नहीं है B . के लिए सभी कॉलम तालिका NULL होगी .फिर यह केवल ऐसी बाद की पंक्तियों को फ़िल्टर करता है (WHERE b.id IS NULL ), और अंत में यह इन सभी पंक्तियों को B . में सम्मिलित करता है टेबल।



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP + MySQL में पुनरावर्ती तर्क

  2. एक सुरक्षित चयन क्वेरी कैसे लिखें जिसमें mysqli के साथ उपयोगकर्ता द्वारा आपूर्ति किए गए मानों की एक चर संख्या हो?

  3. MySQL अवधारणाएं:सत्र बनाम कनेक्शन

  4. MySQL:CASE/ELSE मान को ज्वाइन पैरामीटर के रूप में उपयोग करें

  5. बिना cPanel लॉगिन के PhpMyAdmin को कैसे एक्सेस करें