
הדוגמאות בפוסט הזה מתייחסות לבסיס נתונים המבוסס על הסדרה הפופולרית "משחקי הכס" שיצרתי במיוחד עבור המדריך הזה. אם אתם רוצים להוריד אותו בעצמכם או סתם להבין מה זה בכלל אתם יכולים ללחוץ כאן
במקרים רבים נרצה לחזור על פעולה מסוימת כמו למשל לבצע בדיקה מול נתון מסוים בכל שורה בטבלה. אם ננסה לכתוב את הבדיקה מספר רב של פעמים זה יהיה מתיש, לא יעיל, לא קריא וגם לא יאפשר לנו גמישות בכתיבת הקוד – מה אם אנחנו לא יודעים כמה שורות יש? מה אם מחר יוסיפו שורה חדשה ונרצה שהתכנית תכלול גם בדיקה עליה?
לכן במקרים כאלה נשתמש בלולאות.
לולאות WHILE
ב- T-SQL אנחנו יכולים ליצור לולאות אשר ירוצו (יבצעו את אותן פעולות שוב ושוב) כל עוד תנאי מסוים מתקיים. התנאי הזה נקרא "תנאי כניסה" מפני שהוא מגדיר תנאי שאם מתקיים, תכנס התכנית לתוך הלולאה ותתחיל לבצע את הקוד שבתוכה. יש להגדיר את התנאי בתחילת הלולאה, מייד אחרי המילה WHILE וזאת הסיבה שהלולאות נקראות "לולאות WHILE". זהו הסוג היחיד של לולאות ב-T-SQL למרות שבשפות תכנות אחרות יש סוגים נוספים של לולאות.
מבנה לולאת WHILE
המבנה הבסיסי של לולאה נראה כך:
התנאי יתבסס על ביצוע השוואה כלשהי בין ערכים, כאשר בדרך כלל לפחות אחד מהם הוא משתנה. יש להקפיד כמובן שהתנאי יפסיק להתקיים בשלב מסוים כדי שהתכנית לא תתקע בלולאה אינסופית.