אופרטור Apply: בעקבות ההרצאה של אב"ג

יום שני, נובמבר 25, 2013

אמש פונקנו בהרצאה של איציק בן-גן במפגש של ה-User Group. מכיוון שאני עצמי מכיר די טוב את השימושים באופרטור Apply ואף פרסמתי כמה פוסטים עם כל מיני פטנטים, הייתי בטוח שאב"ג לא יחדש לי הרבה, ואוכל להתרכז בליהנות מהאירוע, מהקהל הרב שהתאסף, וכו'. כמובן שהופתעתי לטובה, אב"ג נתן דוגמאות שלא היכרתי, חידש לי לא מעט, ונתן תמורה נאה לכספנו..(ההשתתפות בחינם – למי שלא הבין את ההלצה)עד כה היכרתי את השימוש ב-Apply כדי לשלוף את n הראשונים מכל קבוצה, כשלתומי חשבתי שחוכמולגים כמוני משתמשים באפשרות זו, וההולכים בדרך הישר – ממספרים את השורות בעזרת Row_Number ומפלטרים על פיו.התוצאות של שתי...
אין תגובות

עמודות מחושבות המתבססות זו על זו

יום רביעי, אוגוסט 15, 2012

נניח שאנחנו מעוניינים להפיק דוח אילו אובייקטים השתנו ומתי (דוגמה מעט מאולצת להמחשה בלבד): Select name, Create_Date, modify_date, DateDiff(Day,create_date,modify_date) DayDiff, Case When DayDiff=0 Then 'Not Changed' Else 'Changed' End Changed, Case When Changed='Changed' And...
אין תגובות

השימושים השונים ב-Cross Apply (וב-Outer Apply)

יום ראשון, מרץ 4, 2012

Cross Aplly הוא חלופה משודרגת של Inner Join ולו שימושים מעניינים שלא כולם מוכרים. 1. בתור שכזה ניתן לעשות איתו כל מה שניתן לעשות עם Inner Join ויותר מזה. רוצה לומר שלו נקלע לאי בודד ונוכל לקחת איתנו לשם רק מספר בודד של פקודת SQL – נעדיף לארוז באמתחתנו את ה-Apply ולהשאיר את ה-Join בבית... שתי השליפות הבאות מבצעות אותו הדבר, לשתיהן פלט זהה, וגם Execution Plan זהה: Use AdventureWorks; Go   Select S.name+'.'+O.name FullName ...
תגובה אחת

חישובי מע"מ, שערי חליפין וכו' המשתנים לאורך זמן

יום שלישי, ספטמבר 28, 2010

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

שליפה מטבלאות המתייחסות זו לזו

יום שלישי, יולי 6, 2010

ההיכרות הראשונה שלי עם עולם בסיסי הנתונים הרלציוניים הייתה לפני כחמש עשרה שנה בקורס אקסס – באחת מגרסאותיו הראשונות. אם לפני הקורס חשבתי שאקסס זה אקסל משופר, הרי לאחר השיעור הראשון בו הראו לנו איך יוצרים טבלה, מכניסים לתוכה נתונים, ממינים ומפלטרים אותה- התחלתי לחשוש שמדובר באקסל נחות ומנוון.. רק לאחר שהראו לנו איך עושים Join בין טבלאות אמרתי בליבי "אההה.." ארוך שפירושו הוא "עכשיו אני מבין..". לזכר ימי התום האלו אני אנסה לרכז בפוסט אחד את כל הדרכים לשלוף מטבלאות תוך שהן מתייחסות זו לזו. נתחיל ביצירת שתי טבלאות לצורך ההדגמות: Use tempdb; Go If Object_Id('T_Ovdim') Is Not Null Drop Table T_Ovdim Go Create Table T_Ovdim(ID Int...