Download presentation
Presentation is loading. Please wait.
1
פקודות לטיפול בנתונים (Data Manipulation)
2
הפקודה: SELECT 2 המשפטים הראשונים הינם חובה וארבעת הנוספים-רשות
3
משפט הSELECT - מגדיר את שמות העמודות שיש לשלוף ולהציג
שמות של עמודות מטבלה אחת או יותר ניתן להגדיר חישובים על עמודות ניתן להגדיר פונקציות הפועלות על עמודה (חישוב ממוצע של גיל) ניתן להגדיר שם נוסף לעמודה הסדר שבו שמות העמודות רשומות הוא הסדר שבו הן תוצגנה
4
משפט WHERE הגדרת תנאי לוגי לשליפת שורות
מכיל אופרטורים השוואתיים: =, >, <, <>, =<, => מכיל אופרטורים לוגיים: NOT, OR, AND בדיקת קיום ערך בתוך קבוצה סגורה של ערכים ע”י שימוש ב IN - בדיקת קיום ערך בתוך טווח ערכים ע”י שימוש ב- BETWEEN בדיקת קיום מחרוזת תווים בתוך ערכים של עמודה ע”י שימוש ב- LIKE
5
משפטים נוספים בפקודת ה- SELECT
משפט GROUPED BY - מאפשר הקבצת שורות שבהם מופיעים בעמודה/ות מסוימת/ות ערכים זהים משפט HAVING - מגדיר תנאי לוגי אותו יקיימו השורות המקובצות בלבד משפט ORDER BY - מגדיר סדר המיון שבו תוצגנה השורות הנשלפות
6
הפקודה Select של שפת SQL מול פקודת Select של האלגברה הטבלאית
?
7
הפקודה Select של שפת SQL מול פקודת Select של האלגברה הטבלאית
Join, Project, Select
8
בסיס הנתונים
9
בסיס הנתונים סטודנטים STUDENTS מס. סטודנט שם סטודנט עיר STUDENT_ID
NAME CITY מס. סטודנט שם סטודנט עיר 105 MOSHE HAIFA 210 DAN 107 EYAL TEL-AVIV 110 RAN 245 YOEL 240 AYELET 200 DAVID 310 TOVA JERUSALEM
10
בסיס הנתונים Grades ציונים STUDENT_ID COURSE_ID SEMESTER TERM GRADE
מס. סטודנט מס. קורס סמסטר מועד ציון 105 C-55 SUM2007 A 70 210 M-100 AUT2008 90 B 50 C-200 85 80 B-10 WIN2008 B-40 245 200 65 WIN2007 95 310 100
11
שליפת כל העמודות וכל השורות - טבלה אחת
12
שליפת שורות ועמודות מסוימות
13
שינוי שם עמודה
14
שליפת שורות ללא הצגת שורות כפולות
15
בחירת שורות - בדיקת השוואה
16
בחירת שורות - בדיקת השוואה
17
בחירת שורות - בדיקת השוואה עם תנאי בוליאני
18
בחירת שורות - בדיקת טווח ערכים רציף
בחירת שורות - בדיקת טווח ערכים רציף
19
בחירת שורות - בדיקת קיום ערך בתוך קבוצת ערכים
20
בחירת שורות - בדיקת מחרוזת
Wild
21
בחירת שורות - בדיקת מחרוזת
22
עמודות מחושבות (Calculated columns)
2008 ‘AUT2008’
23
הוספת כיתוב קבוע 2008 ‘AUT2008’
24
פונקציות מובנות (Build-In Function)
פועלות על עמודה כל שהיא ומחזירות ערך יחיד אם רוצים שהפונקציה תתעלם מערכים כפולים בעמודה נשתמש ב- Distinct לפני שם העמודה רשימת הפונקציות הינה:
25
תחביר הפקודה
26
דוגמאות
27
דוגמאות 2007 ‘SUM2007’
28
מיון התוצאה (Order By)
29
שאילתות מקובצות- Grouped Queries
מאפשר הקבצה של שורות בעלות ערך זהה הצגת שורה אחת עבור אוסף של שורות המכילות אותו ערך בעמודות מסוימות משפט ה- Having מגדיר תנאי על השורות המקובצות כל שם עמודה המופיע במשפט Group By חייב להופיע קודם במשפט ה- Select ובאותו הסדר
30
שאילתות מקובצות - Grouped Queries
31
שאילתות מקובצות - Grouped Queries
desc
32
שאילתות עם מספר טבלאות מתבסס על הקשרים הלוגיים בין הטבלאות
הצירוף (Join) מתבצע ע”י הגדרת תנאי כל שהוא בין העמודות של הטבלאות התנאי יכול להיות: שוויון (Equi Join) או תנאי לוגי אחר (Theta Join) מערכות מסחריות קובעות מגבלות לגבי מספר הטבלאות המשתתפות - 8
33
דוגמא הצג את שמות הסטודנטים ואת עיר מגוריהם עבור כל הסטודנטים שלמדו בקורס c-200
34
שאילתות עם מספר טבלאות INNER
35
שאילתות עם מספר טבלאות
36
שאילתות עם מספר טבלאות
37
סטודנטים בקורסים עם ציון ממוצע גבוה מציון הממוצע של הקורס
SELECT course_name,student_id,student_name,c_avg.course_avg,avg(grade) as student_avg FROM grades g, students s, courses c, (SELECT course_id, avg(grade) as course_avg FROM grades GROUP BY course_id) c_avg WHERE s.student_id = g.student_id and c.course_id = g.course_id and c_avg.course_id = g.course_id GROUP BY course_name,student_id,student_name,c_avg.course_avg HAVING avg(grade) > c_avg.course_avg ORDER BY s.student_id,student_name
38
צירוף טבלאות ע”י Outer Join
הצירוף הרגיל הנקרא גם Inner Join מעביר לטבלת התוצאה רק זוגות של שורות מ- 2 טבלאות עבורן מתקיים תנאי הצירוף הצירוף החיצוני Outer Join מעביר אל טבלת התוצאה את כל השורות של אחת או שתי הטבלאות המשתתפות בצירוף:
39
צירוף טבלאות ע”י Outer Join
Left Outer Join - לטבלת התוצאה עוברות כל השורות מהטבלה השמאלית Right Outer Join - לטבלה התוצאה עוברות כל השורות מהטבלה הימנית Full Outer Join - לטבלת התוצאה עוברות כל השורות מ- 2 הטבלאות
40
צירוף טבלאות ע”י Outer Join - תחביר הפקודה
41
צירוף טבלאות ע”י Outer Join - דוגמא:
הצג את רשימת ראשי המחלקה, שם המחלקה שבראשם הם עומדים ושמות הקורסים המוצעים ע”י אותה מחלקה
42
צירוף טבלה אל עצמה (Reflexive Join, Self Join)
מאפשר התייחסות מספר פעמים אל אותה טבלה
43
תת שאילתא יכולת הקינון מאפשרת לשפת SQL להיקרא שפה מובנית
סדר ביצוע השאילתות הוא מתת השאילתא הפנימית ביותר ועד לשאילתא הראשית תת השאילתא מוקפת בסוגריים ומופיעה בתוך משפט WHERE של השאילתא הראשית תת השאילתא יוצרת טבלת תוצאה המכילה עמודה אחת בלבד או ערך בודד תת השאילתא אינה יכולה להכיל מיון משפט WHERE של תת-שאילתא יכול להכיל בעצמו תת שאילתא נוספת - מבנה מקונן
44
תת שאילתא - דוגמא
45
תת שאילתא כאשר תת שאילתא מחזירה קבוצת ערכים ניתן לבדוק אם הערכים של עמודה מהשאילתא הראשית מופיעים בתוך קבוצת הערכים המוחזרים ע”י תת השאילתא באמצעות האופרטור IN
46
תת שאילתא - דוגמאות ומספר הקורס
47
תת שאילתא - דוגמאות NAME, CITY
48
סטודנטים שלא לקחו קורסים עם 4 נקודות והציונים שלהם מעל 75
SELECT student_id, student_name, course_name, points, grade FROM students s, grades g, courses c WHERE g.student_id=s.student_id and c.course_id =g.course_id and not exist (SELECT * from courses WHERE points=4) and grade > 75
49
איחוד תוצאות של שאילתות (Union)
50
חיתוך תוצאות של שאילתות (Intersect)
51
פקודות לעדכון בסיס הנתונים - הוספה של שורה בודדת (Single Row Insert)
מאפשרת הוספת שורה חדשה לטבלה קיימת
52
הוספה של שורה בודדת מאחר ואנו קובעים ערכים לכל העמודות, ניתן גם:
53
הוספת מספר שורות (Multi-Row Insert)
חדשה Using course_id
54
עדכון שורות (Update)
55
דוגמאות .2007 ‘SUM2007’
56
בטול שורות (Delete)
57
בטול שורות - דוגמאות
58
, ת.ז)
59
תרגילים
60
תרגילים
61
תרגילים
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.