Skip to main content

SQL Journey: Blog #13



I just would like to pass by and state that:

WHERE comes first before GROUP BY


while

GROUP BY comes first before HAVING.


We cannot use WHERE if the condition is an AGGREGATE function i.e. COUNT, AVG, MAX. In these cases, we use HAVING.

Also, when using CASE statement, bear in mind that the result of a case statement is ANOTHER COLUMN. In other words, it is like creating a new column in MS Excel while using an IF-ELSE statement to populate the contents of that column.

Since it is another column, it is written as one of the columns that needs to be on the output of the select statement. For example,


Notice that we put a comma before we used the case statement and we named the column output of the case statement as IncreasedSalary.

Here is also a trick when one wants to delete data in the table. Deleting values in a table is a very crucial thing that must be taken with caution because one misstep and one can delete the whole table. So to do away with this and ensure that you are deleting the correct row in the table, we use SELECT statement first and then use the DELETE statement next.


Next, erase the "*" symbol indicating all columns and then change SELECT to DELETE as shown below.



We also have the PARTITION BY statement which is a subclause of the the OVER clause as shown in lines 67 to 69.


We can also observe that the PARTITION BY subclause will create a new column in our output table which will be labelled as TotalGender and it will be arranged in such a manner that the Gender column is in ascending order since we partitioned by Gender.


It is like we are performing a GROUP BY AND ORDER BY clause.


The only things is now it is applied in every row which in a way informs us that Pam is a Female worker and there are two other female workers in the company working together with Pam. 

Another thing that we can notice in the PARTITION BY exercise is ALIASING by using "AS". By using aliasing, instead of writing [SQL Project 1].dbo.EmployeeDemographics which is quite long, we can now call it by using Demo. It is very important though that we name the table with a unique identifier for us to easily query on the appropriate table especially in cases where we are using big databases consisting of many tables.

Comments

Popular posts from this blog

Privacy Policy of ShinStats: descriptives calc

Privacy Policy Shin Nix built the ShinStats app as an Ad Supported app. This SERVICE is provided by Shin Nix at no cost and is intended for use as is. This page is used to inform visitors regarding my policies with the collection, use, and disclosure of Personal Information if anyone decided to use my Service. If you choose to use my Service, then you agree to the collection and use of information in relation to this policy. The Personal Information that I collect is used for providing and improving the Service. I will not use or share your information with anyone except as described in this Privacy Policy. The terms used in this Privacy Policy have the same meanings as in our Terms and Conditions, which are accessible at ShinStats unless otherwise defined in this Privacy Policy. Information Collection and Use For a better experience, while using our Service, I may require you to provide us with certain personally identifiable information. The information that I request will be retaine...

Gears Update

It has been a while since my last post and many things have happened since then. For one, I decided to upgrade my laptop as I saw it fit for the direction I am moving towards particularly on data analytics. It's been almost 10 years since I bought "Julian", my first work laptop, and there were so many milestones that we shared together. I bought my first laptop during my second job in Taguig City. It served as an extension of myself as I work to earn for my family particularly in helping my siblings with their education as I am the eldest and breadwinner of the family. That laptop was able to create a joint personnel reporting system excel file which was used by the Philippine Army to be able to account their personnel on a national level during my stint as an Engineer / Researcher in the aforementioned organization. Julian was my laptop when I finished my Master's degree at the Ateneo de Davao University where I also created the Programmable Logic Controller Trainer ...

Could this be my first...?

What's up Nixers! In today's blog, I want to discuss with you the things that I did these past two weeks. After my encounter with my colleague, Adonis, one of our discussions focused on the creation of an app that would help ease students' struggles. He was very passionate about an app for a civil engineering application involving beams under load. As our discussions went on, I do acknowledge that if that particular app would be realized, it would really benefit civil engineering students in a profound way. What I liked about the discussion was how the app was described. Like, if I put my self in the user's perspective, the user interface which he discussed would be "user-friendly" as he really understands the flow of how things are to be calculated. As we left and went each other's ways, I was inspired by an idea to create an app utilizing the python programs that I have already developed for statistics. Like, how useful would it be for students to guide ...