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

Mysql केस जब ज्वाइन स्टेटमेंट एरर

मुझे लगता है कि आपका इरादा है:

SELECT *
FROM `pet_info` LEFT JOIN
     `lostpets`
     ON `pet_info`.`id` = `lostpets`.`petid` LEFT JOIN
     `pet_images`
     ON `pet_info`.`id` = `pet_images`.`petid` LEFT JOIN
     `cat_breeds`
     ON `cat_breeds`.`id` = `pet_info`.`pet_breed` AND
        `pet_info`.`pet_cat` = 2 LEFT JOIN
     `dog_breeds`
     ON `dog_breeds`.`id` = `pet_info`.`pet_breed` AND
        `pet_info`.`pet_cat` = 1
WHERE `pet_info`.`pet_user_id` = 581;

नोट:

  • इस तरह की क्वेरी के साथ, आपको SELECT * . का उपयोग नहीं करना चाहिए , आपको अपने इच्छित कॉलम स्पष्ट रूप से चुनने चाहिए। अलग-अलग टेबल में एक ही नाम के कॉलम होते हैं।
  • आपको कॉलम एलियासेस का उपयोग करना चाहिए। मैंने इन्हें क्वेरी में नहीं डाला, लेकिन ये एक अच्छा विचार है।
  • वास्तविक क्वेरी में, आपके पास SELECT . में भाव होंगे cat_breeds . से स्तंभों को संयोजित करने के लिए और dog_breeds , जैसे COALESCE(cat_breeds.col1, dog_breeds.col1) as col1



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. संग्रहीत प्रक्रिया जो MYSQL में 7 दिनों से अधिक पुरानी पंक्तियों को स्वचालित रूप से हटा देती है

  2. SQL - एक क्वेरी में एकाधिक रिकॉर्ड अपडेट करें

  3. R को MySQL से कैसे कनेक्ट करें या RMySQL पैकेज को कैसे इंस्टाल करें?

  4. Sql उन तत्वों का चयन करता है जो सरणी से मेल खाते हैं और उन्हें एक पंक्ति में प्रदर्शित करते हैं

  5. तीन तालिकाओं में शामिल हों