UNION לעומת UNION ALL
חלק מהיחידה מעבר ליסודות במסלול ה-SQL של Coddy. שיעור 16 מתוך 27.
פגשת את UNION ביסודות: הוא מערים שתי קבוצות תוצאות זו על גבי זו. כברירת מחדל הוא גם מסיר כפילויות, דבר שכרוך במיון נוסף.
SELECT name FROM authors
UNION
SELECT name FROM editorsUNION ALL מבצע את אותה ערימה, אבל משאיר כפילויות. הוא מהיר יותר וכמעט תמיד זה מה שתרצו כשידוע לכם ששני הצדדים לא יכולים להפיק את אותה שורה, או כשאתם באמת רוצים לספור כל הופעה.
SELECT name FROM authors
UNION ALL
SELECT name FROM editorsשני הצדדים חייבים להחזיר את אותו מספר עמודות, באותו סדר, עם טיפוסים תואמים.
אתגר
קלהטבלאות והעמודות הזמינות:
online_orders:order_no,amountretail_orders:ticket_no,total
שתי הטבלאות עוקבות אחר הזמנות מערוצים שונים, עם שמות עמודות שונים. החזר רשימה משולבת אחת של כל ההזמנות עם העמודות:
channel:'online'או'retail'order_id:order_noמהערוץ המקוון,ticket_noמהערוץ הקמעונאיamount: הסכום הכולל של ההזמנה (מתוךamountאוtotal)
השאר את כל השורות (ללא הסרת כפילויות). מיין לפי amount בסדר יורד.
נסו בעצמכם
-- שתי שאילתות SELECT המותאמות לאותן 3 עמודות, ומאוחדות באמצעות UNION ALL
השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה מעבר ליסודות
תרגלו בעצמכם: SQL אונליין