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

MySQL केस स्टेटमेंट के साथ जुड़ता है

पूरे इनर जॉइन को केस न करें, जॉइन में केवल 'ऑन' क्लॉज पर केस करें। यह काम करना चाहिए (जब तक कि मेरे पास टाइपो न हों):

  SELECT 
    conversation.c_id,
    conversation.user_one,
    conversation.user_two,
    users.name,
    users.lastName
  FROM `conversation` 
  INNER JOIN `users`
  on
  users.id =
  CASE
    WHEN conversation.user_one = 1
    THEN conversation.two 
    WHEN conversation.user_two = 1
    THEN conversation.user_one   
 END
 WHERE `user_one` = 1 OR `user_two` = 1

आप इनमें से प्रत्येक स्थिति में बाएं शामिल होने और फिर अपने चयन कथन में केस स्टेटमेंट का उपयोग करके यह निर्धारित करने के लिए एक समान प्रभाव प्राप्त कर सकते हैं कि दो तालिकाओं में से कौन सा रिकॉर्ड प्रदर्शित करना है।




  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. Mysql में DC2Type सरणी डेटाटाइप क्या है

  4. JpaSpecificationExecutor जॉइन + विशिष्टता में ऑर्डर करें

  5. अंतरराष्ट्रीय वर्णों का उपयोग करते समय मुझे MySQL क्वेरी से दोहरे परिणाम मिलते हैं, अर्थात /Ä=A &=O,