מדריך SQL זה מתמקד במבוא למשפט ה WHERE. מדריך זה הינו חלק מרשימת פוסטים הנוגעים לפקודת ה WHERE ב SQL SERVER. כדי להגיע לפוסטים הנוספים ניתן להעזר בקישורים הבאים :

סינון נתונים משפט WHERE

משפט WHERE

משפט WHERE  מאפשר לנו לבצע סינונים על המידע שהתקבל. בפרק הקודם למדנו כיצד ניתן לשלוף את שמות כל העובדים מהטבלה עתה נוכל לשלוף רק את אלו ששכרם גבוה מ– 5000 או רק את אלו שעובדים במחלקת כח אדם וכדומה.

 

!         סדר פקודות הSQL מובנה, משפט  WHERE חייב להכתב לאחר משפט FROM (אשר חייב להכתב לאחר פקודת SELECT).

!         להבדיל מפקודת SELECT ופקודת FROM אשר בגדר חובה על מנת ליצור משפט SQL תקין, משפט WHERE הינו בגדר רשות, פקודת SQL יכולה לעבוד בצורה תקינה איתו ובלעדיו.

 

מבנה פקודת WHERE

WHERE  שם_עמודה   תנאי_להשוואה ערך

לדוגמא:

SELECT * 

FROM employees 

WHERE salary = 3000

 

v     שם_העמודה שם העמודה עליה אנו רוצים לבצע את ההתניה, בדוגמא זו אנו רוצים להציג את כל אלו אשר שכרם שווה ל– 3000 אז בחרנו את עמודת salary, אם היינו רוצים לבחור את כל אלו שעיר מגוריהם שווה ל tel-aviv היינו בוחרים בעמודת city.

v     תנאי להשוואה קיימים שני סוגים של תנאי השוואה:

o       תנאי פשוט מיוצג ע"י אופרטורים פשוטים כגון: = , < , > , => , =<, <>

o       תנאי מורכב מיוצג ע"י אופרטורים מורכבים כגון:  IN, BETWEEN, LIKE.

v     ערך להשוואה אנו יכולים לבצע התניה מול:

o       מספר לדוגמא, שכר שווה למספר מסוים.

o       תאריך לדוגמא, תאריך העסקה גדול מתאריך מסויים.

o       מחרוזת למשל, שם משפחה שווה לשם משפחה מסויים.

 

!         סוג הערך חייב לתאום לסוג העמודה (לא הגיוני לנסות להציג את העובדים ששמם הפרטי גבוה מ 4503).

!         במידה וההשוואה שביקשנו לא תואמת את ערכי הטבלה (לדוגמא, השכר הגבוה ביותר בטבלה הוא 12,000 ואנו רוצים להציג את העובדים שמרוויחים יותר מ 20,000) לא תחזור אלינו אף תוצאה אך גם לא תתקבל שגיאה (ביקשנו מהטבלה ערכים שמבחינתה לא קיימים).