דילוג לתוכן
  • דף הבית
  • קטגוריות
  • פוסטים אחרונים
  • משתמשים
  • חיפוש
  • חוקי הפורום
כיווץ
תחומים

תחומים - פורום חרדי מקצועי

💡 רוצה לזכור קריאת שמע בזמן? לחץ כאן!
  1. דף הבית
  2. תכנות
  3. LEFT JOIN לא מציג את השורות שאין התאמה

LEFT JOIN לא מציג את השורות שאין התאמה

מתוזמן נעוץ נעול הועבר תכנות
4 פוסטים 2 כותבים 154 צפיות 2 עוקבים
  • מהישן לחדש
  • מהחדש לישן
  • הכי הרבה הצבעות
תגובה
  • תגובה כנושא
התחברו כדי לפרסם תגובה
נושא זה נמחק. רק משתמשים עם הרשאות מתאימות יוכלו לצפות בו.
  • י מנותק
    י מנותק
    יוס
    כתב ב נערך לאחרונה על ידי
    #1

    שלום,

    אני מנסה לקבל מידע משני טבלאות שיש לי ב MYSQL

    1. טבלת הזמנות עם פרטי ההזמנה.
    2. סל הקניה עם פרטי המוצרים ומחירים

    אני מנסה ליצור שאילתא שתתן לי לי עבור כל הזמנה את פרטיה מטבלה מס' 1, ואת מספר המוצרים והסכום מטבלה מספר 2,

    מה שחשוב לי לראות גם הזמנות שאין בהם מוצרים (הזמנות ריקות)

    זה מה שעשיתי

    SELECT orders.*, SUM(product.price) AS cartSum, COUNT(product.id) AS productCount
    FROM orders 
    LEFT JOIN product
    ON orders.id = product.orderId GROUP BY product.orderId
    

    את השורות שיש התאמה בין שני הטבלאות אני מקבל את כולם
    אך אני מקבל רק שורה אחת (מתוך מאות) של הזמנות שאין התאמה מטבלה מספר 2

    תודה

    מערכת מכירות בכל ערוצי המכירה, טלפון-מייל-ואתר
    שיגור הודעות במחירים המשתלמים ביותר
    לפתיחת מערכת https://app.ipsales.co.il/

    dovidD י 2 תגובות תגובה אחרונה
    0
    • י יוס

      שלום,

      אני מנסה לקבל מידע משני טבלאות שיש לי ב MYSQL

      1. טבלת הזמנות עם פרטי ההזמנה.
      2. סל הקניה עם פרטי המוצרים ומחירים

      אני מנסה ליצור שאילתא שתתן לי לי עבור כל הזמנה את פרטיה מטבלה מס' 1, ואת מספר המוצרים והסכום מטבלה מספר 2,

      מה שחשוב לי לראות גם הזמנות שאין בהם מוצרים (הזמנות ריקות)

      זה מה שעשיתי

      SELECT orders.*, SUM(product.price) AS cartSum, COUNT(product.id) AS productCount
      FROM orders 
      LEFT JOIN product
      ON orders.id = product.orderId GROUP BY product.orderId
      

      את השורות שיש התאמה בין שני הטבלאות אני מקבל את כולם
      אך אני מקבל רק שורה אחת (מתוך מאות) של הזמנות שאין התאמה מטבלה מספר 2

      תודה

      dovidD מחובר
      dovidD מחובר
      dovid
      ניהול
      כתב ב נערך לאחרונה על ידי dovid
      #2

      @יוס אמר בLEFT JOIN לא מציג את השורות שאין התאמה:

      GROUP BY product.orderId

      תשנה את זה GROUP BY product.orderId לGROUP BY orders.id.
      הסבר: אתה קיבצת לפי מס' הזמנה של שדה ההזמנה שבטבלת המוצרים. באורח פלא, כל ההזמנות להם אין שום שורה בטבלת המוצרים, הערך של השדה product.orderId שלהם הוא זהה (null)...

      • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
      • בכל נושא אפשר ליצור קשר dovid@tchumim.com
      תגובה 1 תגובה אחרונה
      3
      • י יוס

        שלום,

        אני מנסה לקבל מידע משני טבלאות שיש לי ב MYSQL

        1. טבלת הזמנות עם פרטי ההזמנה.
        2. סל הקניה עם פרטי המוצרים ומחירים

        אני מנסה ליצור שאילתא שתתן לי לי עבור כל הזמנה את פרטיה מטבלה מס' 1, ואת מספר המוצרים והסכום מטבלה מספר 2,

        מה שחשוב לי לראות גם הזמנות שאין בהם מוצרים (הזמנות ריקות)

        זה מה שעשיתי

        SELECT orders.*, SUM(product.price) AS cartSum, COUNT(product.id) AS productCount
        FROM orders 
        LEFT JOIN product
        ON orders.id = product.orderId GROUP BY product.orderId
        

        את השורות שיש התאמה בין שני הטבלאות אני מקבל את כולם
        אך אני מקבל רק שורה אחת (מתוך מאות) של הזמנות שאין התאמה מטבלה מספר 2

        תודה

        י מנותק
        י מנותק
        יוס
        כתב ב נערך לאחרונה על ידי יוס
        #3

        עריכה: עד שסיימתי את זה ראיתי את התגובה של @dovid

        מצאתי את הטעות,

        עשיתי GROUP BY product.orderId
        אך לא קיבצתי גם את הנתונים שבטבלה 1

        זה המתוקן

        SELECT orders.*, SUM(product.price) AS cartSum, COUNT(product.id) AS productCount
        FROM orders 
        LEFT JOIN product
        ON orders.id = product.orderId 
        GROUP BY orders.id, product.orderId
        
        

        מערכת מכירות בכל ערוצי המכירה, טלפון-מייל-ואתר
        שיגור הודעות במחירים המשתלמים ביותר
        לפתיחת מערכת https://app.ipsales.co.il/

        dovidD תגובה 1 תגובה אחרונה
        1
        • י יוס

          עריכה: עד שסיימתי את זה ראיתי את התגובה של @dovid

          מצאתי את הטעות,

          עשיתי GROUP BY product.orderId
          אך לא קיבצתי גם את הנתונים שבטבלה 1

          זה המתוקן

          SELECT orders.*, SUM(product.price) AS cartSum, COUNT(product.id) AS productCount
          FROM orders 
          LEFT JOIN product
          ON orders.id = product.orderId 
          GROUP BY orders.id, product.orderId
          
          
          dovidD מחובר
          dovidD מחובר
          dovid
          ניהול
          כתב ב נערך לאחרונה על ידי
          #4

          @יוס תמחק את , product.orderId, זה מיותר.

          • מנטור אישי בתכנות והמסתעף – להתקדם לשלב הבא!
          • בכל נושא אפשר ליצור קשר dovid@tchumim.com
          תגובה 1 תגובה אחרונה
          1
          • dovidD dovid העביר נושא זה מ-ארכיון code613m ב-
          תגובה
          • תגובה כנושא
          התחברו כדי לפרסם תגובה
          • מהישן לחדש
          • מהחדש לישן
          • הכי הרבה הצבעות


          בא תתחבר לדף היומי!
          • התחברות

          • אין לך חשבון עדיין? הרשמה

          • התחברו או הירשמו כדי לחפש.
          • פוסט ראשון
            פוסט אחרון
          0
          • דף הבית
          • קטגוריות
          • פוסטים אחרונים
          • משתמשים
          • חיפוש
          • חוקי הפורום