האם ניתן לחשב סכום מצטבר (Running Sum) תוך פניה אחת לטבלה וללא שימוש בפונקציות החלון החדשות שבגרסת 2012? בפוסט מתחילת החודש טיפלתי בנושא חישובי מלאי- חישובים שכרוכים בחישוב סכומים מצטברים, והראיתי כיצד השימוש בפונקציות החלון החדשות של גרסת 2012 מייעלות את החישובים בצורה משמעותית, בעיקר מפני שמתבצע Scan אחד על הטבלה. בפוסט אחר ישן יותר הראיתי כיצד ניתן לבצע Lag & Lead תוך פניה אחת לטבלה (כלומר- ללא Join עצמי או שאילתת משנה הפונה לטבלה) וללא שימוש בפונקציות החלון החדשות של גרסת 2012; ותהיתי אם...
טריגר על פעולות DML בטבלה הוא כלי מוכר יחסית, אך לא כל האופציות מוכרות; ואולי מתבלבלים לעיתים בינו לבין טריגרים אחרים. הפוסט הזה עוסק בטריגרים על טבלאות שמופעלים בעקבות ביצוע פעולות Delete / Update / Insert בטבלה עליה הם הוגדרו. הטריגרים אינם מופעלים בעת ביצוע פקודת Select או Truncate, שינוי סכימה של טבלה, או כל שינוי שהוא באובייקטים של המערכת ; ולכל אלו יש פתרונות אחרים. כדי לפשט את הדוגמאות- אשתמש בכל פעם בטבלה אחת בלבד, והטריגרים יפעילו פקודות Print או Select כדי להמחיש את הפעולה שלהם. במציאות...