Menu
Coddy logo textTech

פונקציית NTILE

שיעור 10 מתוך 13 בקורס SQL למתקדמים של Coddy.

NTILE(n) ממספרת את השורות על ידי חלוקתן ל-n חלקים שווים. משתמשים בה לעיתים קרובות לשיפור הביצועים — שליחת כמויות גדולות של נתונים בבת אחת עשויה לא להיות רעיון טוב, ולכן הפונקציה הזו מאפשרת לשלוח בכל פעם חלקים קטנים יותר.

לדוגמה:

idlevel
14
24
35
46
57
67
SELECT id, level, NTILE(3) OVER (ORDER BY level) as pieces
from table1

הפעולה תחזיר:

idlevelpieces
141
241
352
462
573
673

קיבלנו 3 חלקים: רמה 4 בחלק 1, רמות 5 ו-6 בחלק 2, ורמה 7 בחלק 3.
אם n ב-NTILE(n) אינו מתחלק במספר השורות בטבלה: נניח שיש בטבלה 9 שורות ו-n הוא 4, הפונקציה תכניס כמה שיותר שורות לחלק האחרון.

challenge icon

אתגר

בינוני

באתגר הזה יש לנו יצורים שרוצים למצוא בן או בת זוג. אנחנו צריכים לעזור להם למצוא התאמה.

לכל יצור יש העדפה שמיוצגת כמספר. אם המספרים של שני היצורים קרובים מספיק, הם עשויים להתאים זה לזה.

מצאו את הזוגות המתאימים ביותר. צרו עמודה חדשה בשם couple_matcher שממוספרת מאחת ועד למספר היצורים חלקי שתיים, כך שלכל זוג יהיה אותו מספר. אפשר ליצור זוגות רק אם לאחד היצורים יש רגליים ולשני אין.

מיינו את התוצאה בסדר עולה לפי couple_matcher ו-creature_name.

נסו בעצמכם

כל השיעורים ביחידה SQL למתקדמים

תרגלו בעצמכם: קומפיילר Python אונליין