Last answered:

16 Jun 2020

Posted on:

06 Jun 2020

0

Solution explanation for UNION vs UNION ALL

Hi, I do not quite get the solution given for the above-mentioned exercise. Can give detailed explanation? 
2 answers ( 0 marked as helpful)
Instructor
Posted on:

08 Jun 2020

0

Hi Ethan!
Thanks for reaching out.
Am I right to think that you are referring to the code that has been displayed here, please? https://learn.365datascience.com/courses/sql/union-vs-union-all If yes, then can you please be more specific - what do you get? Do you obtain a different result or do you not manage to obtain a result set at the first place?
Finally, can you please share the query you executed before obtaining the different output?
The answers to these questions will help us understand what problem you are facing exactly. Alternatively, we might not be able to properly address the issue you are facing.
Looking forward to your answer.
Best,
Martin

Instructor
Posted on:

16 Jun 2020

0

Hi Ethan!
Thanks for your reply.
When you have the minus sign - it means that it reverses the order.
1) ORDER BY a.emp_no DESC;
Ending the relevant query this way, you will obtain an output order with the highest employee number on top, the smallest employee number down the list, and the null values at the end.

2) ORDER BY a.emp_no ASC;
This ending will do the opposite - the null values will be on top, and then the employee numbers will grow from the smallest to the highest.

3) ORDER BY -a.emp_no DESC;
Using this code (and this is the one provided here: https://learn.365datascience.com/courses/sql/union-vs-union-all), first orders the employees from smallest to highest number, and leaves the null values at the end.

4) ORDER BY -a.emp_no ASC;
Following the logic explained so far, this ending would list the null value first, and will then order all employees from the highest to the lowest number.

Depending on the situation, you may choose between 1), 2), 3), and 4). In our example, we think 3) suits best; that's why we ended the query with ORDER BY -a.emp_no DESC;
Hope this helps.
Best,
Martin

Submit an answer