יום שישי, 1 ביוני 2018

אודות המבחן האחרון ("מעבדה") ב-SQL ו-Access

פרויקט Access


ביום רביעי ה-30/05/2018 היה יום הלימודים האחרון של יד' תוכנה - הגשת פרויקטים שנתיים לבוחנים של משרד החינוך.
על הפרויקט הגדול ב-Java עוד נכתוב בהמשך, אבל כמה מילים על הפרויקט ב-Access:


מה ציפינו:
ציפינו להציג את מסדי הנתונים שבנינו ב-Access, אשר מלווים בשלל טפסים ודוחות, עמודי נחיתה מעוצבים וכפתורים נוחים לכל פעולה על המסד.



מה קיבלנו:
הבוחנים לא התעניינו ב-Access, יתכן שזו הייתה אי הבנה, הם ביקשו לראות את קשרי הגומלין בין הטבלאות, ואז נתנו לנו כרבע שעה לבצע משימה כלשהי.









משימות לדוגמה:



1.
שאלה:
(בהנתן טבלת "הזמנות" שלי שבה יש לכל הזמנה תאריך) מצא את היום בשבוע שבו מתרחשות הכי הרבה הזמנות, ומצא את השעה ביממה שמתרחשות בה הכי הרבה הזמנות.

פתרון אפשרי:

-- להציג את כל הנתונים על פי יום בשבוע SELECT TOP 1000 [OrderID] ,DATEPART ( "dw" , [OrderTime]) ,[EmployeeID] ,[TableNum] FROM [Restaurant].[dbo].[Orders] SELECT TOP 1 DATEPART ( "dw" , [OrderTime]) as dayInWeek, COUNT(DATEPART ( "dw" , [OrderTime])) AS dayInWeekCount FROM [Restaurant].[dbo].[Orders] GROUP BY DATEPART ( "dw" , [OrderTime]) ORDER BY dayInWeekCount DESC ---------------------------------- -- להציג את כל הנתונים על פי שעה SELECT TOP 1000 [OrderID] ,DATEPART ( "hh" , [OrderTime]) as theHour ,[EmployeeID] ,[TableNum] FROM [Restaurant].[dbo].[Orders] SELECT TOP 1 DATEPART ( "hh" , [OrderTime]) as theHour, COUNT(DATEPART ( "hh" , [OrderTime])) AS theHourCount FROM [Restaurant].[dbo].[Orders] GROUP BY DATEPART ( "hh" , [OrderTime]) ORDER BY theHourCount DESC
































2.
שאלה:
(בהנתן טבלת "מכירות" שבה יש לכל מכירה תאריך) מצא את הפריט הנמכר ביותר בכל חודש.


3.
שאלה:
מצא את שמות כל הלקוחות שטסו לפחות לאחד מה Top 3 יעדים הכי פופולארים. פעם אחת הגדר ש"פופולריות" נמדדת על פי כמות הזמנת הטיסות לאותו יעד, ופעם אחרת הגדר ש"פופולריות" נמדדת על פי מספר הימים בסך הכל שהתרחשו הזמנות לאותו יעד.













אין תגובות:

הוסף רשומת תגובה