Menu
Coddy logo textTech

CASE ב־ORDER BY

חלק מהיחידה מעבר ליסודות במסלול ה-SQL של Coddy. שיעור 2 מתוך 27.

CASE לא מיועד רק ל־SELECT. אפשר להציב אותו בתוך ORDER BY כדי למיין שורות לפי כלל מותאם אישית שהעמודות לבדן לא יכולות לבטא.

SELECT name, status
FROM tickets
ORDER BY
    CASE status
        WHEN 'urgent' THEN 1
        WHEN 'high'   THEN 2
        WHEN 'normal' THEN 3
        ELSE 4
    END

שימו לב לצורה הקצרה יותר: CASE column WHEN value THEN .... היא שקולה ל־WHEN column = value. השתמשו בצורה שנקראת בצורה ברורה יותר.

challenge icon

אתגר

קל

טבלאות ועמודות זמינות:

  • tasks: id, title, priority

החזר את title ואת priority, בסדר שבו 'critical' מופיע ראשון, אחריו 'high', אחריו 'low', וכל ערך אחר מופיע אחרון. בתוך אותה רמת עדיפות, מיין לפי title בסדר אלפביתי.

נסו בעצמכם

SELECT title, priority
FROM tasks
ORDER BY
    -- החליפו את סדר המיון הזמני שלהלן בביטוי CASE אשר
    -- מדרג את השורות כפי שמתואר במשימה, ואז מכריע במקרה של שוויון לפי סדר אלפביתי
    id
quiz iconבחנו את עצמכם

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

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

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