sql - एकाधिक प्रवेश एसक्यूएल एक्सेस में शामिल हों




ms-access join (2)

क्वेरी अभिव्यक्ति में सिंटेक्स त्रुटि (अनुपलब्ध ऑपरेटर) tbl_employee.emp_id = tbl_netpay.emp_id INNER जॉइन tbl_gross पर tbl_employee.emp_id = tbl_gross.emp_ID INNER जॉइन tbl_tax tbl_employee.emp_id - tbl_tax.emp_ID 'पर जुड़ें।

SELECT tbl_employee.emp_ID,
tbl_employee.emp_name,
tbl_gross.BasicSalary,
tbl_gross.totalOT,
tbl_netpay.totalGross,
tbl_tax.totalLate,
tbl_tax.allowance,
tbl_tax.SSS,
tbl_tax.PhilHealth,
tbl_tax.GSIS,
tbl_tax.HDMF,
tbl_netpay.totalDeduc,
tbl_netpay.emp_ti,
tbl_netpay.emp_wt,
tbl_netpay.emp_np
FROM  tbl_employee
INNER JOIN tbl_netpay ON tbl_employee.emp_id = tbl_netpay.emp_id
INNER JOIN tbl_gross ON tbl_employee.emp_id = tbl_gross.emp_ID
INNER JOIN tbl_tax ON tbl_employee.emp_id = tbl_tax.emp_ID;

मुझे हमेशा उपरोक्त त्रुटि मिलती है।


आपके उत्तर के लिए धन्यवाद हंसअप, यह बहुत उपयोगी है और यह काम करता है!

मुझे एक्सेस में काम करने वाले तीन पैटर्न मिलते हैं, आपका सबसे अच्छा है, क्योंकि यह सभी मामलों में काम करता है।

  • अंदरूनी जॉइन, आपका संस्करण। मैं इसे " बंद सेट पैटर्न " कहूंगा। केवल इस पैटर्न के साथ अच्छे प्रदर्शन के साथ एक ही तालिका में दो से अधिक तालिकाओं में शामिल होना संभव है।

    SELECT C_Name, cr.P_FirstName+" "+cr.P_SurName AS ClassRepresentativ, cr2.P_FirstName+" "+cr2.P_SurName AS ClassRepresentativ2nd
    FROM
         ((class
           INNER JOIN person AS cr 
           ON class.C_P_ClassRep=cr.P_Nr
         )
         INNER JOIN person AS cr2
         ON class.C_P_ClassRep2nd=cr2.P_Nr
      )
    

    ;

  • इनर जॉइन " जंजीर सेट पैटर्न "

    SELECT C_Name, cr.P_FirstName+" "+cr.P_SurName AS ClassRepresentativ, cr2.P_FirstName+" "+cr2.P_SurName AS ClassRepresentativ2nd
    FROM person AS cr
    INNER JOIN ( class 
       INNER JOIN ( person AS cr2
       ) ON class.C_P_ClassRep2nd=cr2.P_Nr
    ) ON class.C_P_ClassRep=cr.P_Nr
    ;
    
  • जहां के साथ क्रॉस जॉइन

    SELECT C_Name, cr.P_FirstName+" "+cr.P_SurName AS ClassRepresentativ, cr2.P_FirstName+" "+cr2.P_SurName AS ClassRepresentativ2nd
    FROM class, person AS cr, person AS cr2
    WHERE class.C_P_ClassRep=cr.P_Nr AND class.C_P_ClassRep2nd=cr2.P_Nr
    ;
    

एक्सेस FROM उन प्रश्नों के लिए खंड FROM ब्रांड्स की आवश्यकता होती है जिनमें एक से अधिक शामिल होते हैं। इसे इस तरह से आजमाएं ...

FROM
    ((tbl_employee
    INNER JOIN tbl_netpay
    ON tbl_employee.emp_id = tbl_netpay.emp_id)
    INNER JOIN tbl_gross
    ON tbl_employee.emp_id = tbl_gross.emp_ID)
    INNER JOIN tbl_tax
    ON tbl_employee.emp_id = tbl_tax.emp_ID;

यदि संभव हो, तो अपने जुड़ने के लिए एक्सेस क्वेरी डिज़ाइनर का उपयोग करें। डिजाइनर डीबी इंजन को खुश रखने के लिए आवश्यक ब्रांड्स जोड़ देगा।





inner-join