שאילתה באקסס

amosr

New member
שאילתה באקסס

אני עובד עם אקסס מול מסד נתונים SQL
אני מנסה לעשות בשאילתה שבנויה על מס טבלאות סיכום לפי תאריכים ווהסכומים מוכפלים לי
כאשר השאילתה ללא סיכומים (כל הרשומות) הנתונים נכונים
נראה לי שהבעיה בקשר בין הטבלאות ,לא מוצא מה
 

amosr

New member
שאילתה באקסס

מצורף הקוד ותמונה של השאילתה באקסס
 

i t a i b

New member
רעיון

נראה שהסיבה שעשית join עם טבלת dbo_omlserialable עם שדה omlitemid כאשר הוא לא מפתח.
(המפתח בטבלה זו - זה שילוב של 3 עמודות).
ובמידה ויש ערכים כפולים בעמודת omlitemid גם השאילתא תחזיר רשומות כפולות.
 

גרי רשף

New member
תשובה מדוייקת קשה לתת בצורה כזו

הבעייה שאתה מתאר מוכרת בצורה כזו או אחרת: עושים Join בין שתי טבלאות, והשורות מוכפלות. כל שורה כשלעצמה היא נכונה, אבל הכל ביחד לא.
זה נגרם כי חסר תנאי ב-Join (פסוקית ה-On): יש לעשות זאת לפי שתי עמודות ועשינו לפי אחת, או אולי - היה תנאי בין טבלה 1 לטבלה 2, ובין טבלה 2 וטבלה 3, אל חסר תנאי בין טבלה 1 וטבלה 3.
נסה לבודד שורה אחת בצד הרבים של ה-Join, ולראות כמה שורות חוזרות אליך. סביר להניח שתראה שהשורות מוכפלות. כמובן, כל אחת מהן נכונה כשלעצמה, אבל חזרו יותר ממה שצריך.
 
והדרך לאתר את גורם הכפילות....

בהמשך למה שגרי כתב ובצדק.....
תוסיף קריטריון שיציג רק רשומה אחת מוכפלת.
ובחלק של ה - SELECT תכתוב *.
כמבון ש grouping יורד וגם HAVING הופך להיות קריטריון רגיל.
 
למעלה