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

MYSQL सेल्फ-जॉइन कैसे काम करता है?

जिस तरह से मैं इसे समझने की कोशिश करता हूं वह दो सूचियों को एक लेबल वाले ईवेंट 1 और एक ईवेंट 2 पर लिखना है। फिर प्रत्येक सूची में कुछ रिकॉर्ड सूचीबद्ध करें (सूचियां समान होंगी) अब नीचे दिए गए विवरण में WHERE से शुरू करें।

हम दो तालिकाओं से डेटा ले रहे हैं (ठीक है एक ही तालिका दो बार उपयोग की जाती है, लेकिन इस समय इसे अनदेखा करने का प्रयास करें)

FROM mm_eventlist_dates event1
JOIN mm_eventlist_dates event2 

यह शायद बाकी को नीचे से ऊपर तक पढ़ने में मदद करता है।

  WHERE event1.id=$id

इसलिए हम इवेंट 1 से रिकॉर्ड चाहते हैं जिसमें निर्दिष्ट रिकॉर्ड आईडी है। शायद यह ठीक एक रिकॉर्ड है। अब हम उस घटना के समाप्त होने के अगले दिन का पता लगाते हैं।

 date_add(event1.enddate, INTERVAL 1 DAY)

अब यह हमें इवेंट 2 के रिकॉर्ड बताता है, उन्हें उस तारीख से शुरू करने की जरूरत है,

ON event2.startdate = date_add(event1.enddate, INTERVAL 1 DAY)

अब हमारे पास दो रिकॉर्ड की पहचान हो गई है, हमें कौन से क्षेत्र चाहिए?

SELECT event2.id, event2.startdate, event2.price

ओह, बस वही फ़ील्ड जिसकी शुरुआत की तारीख हमें पता चल गई है।



  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. LIMIT क्लॉज में बाइंडवैल्यू विधि कैसे लागू करें?

  3. PHP और mySQL:वर्ष 2038 बग:यह क्या है? इसे कैसे हल करें?

  4. mysql_num_rows () पैरामीटर 1 को संसाधन, बूलियन में दिए जाने की अपेक्षा करता है

  5. JDBC MySql कनेक्शन पूलिंग अभ्यास समाप्त कनेक्शन पूल से बचने के लिए