Prioritizing Rows With The Ranking Functions

Ranking functions are some of the most commonly used analytic functions, and although the “ranking” category can quickly make you think about Top-N queries, that is actually not the only type of problems you can solve with them. In this short post, I demonstrate another common use of the ranking… Read more »

The awesome Pivot and Unpivot Features in Oracle SQL

I decided to write about the Pivot and Unpivot clauses, because I find them very useful and powerful. In this article I will try to explain how they are used and show you some examples of the things you can do with them. These are features that were added in… Read more »

Understanding Analytic Functions

analytic functions windowing clause

Analytic functions in Oracle SQL are very useful and are utilized by many people, but sometimes without completely understanding how they work or what data they operate on. This article does not focus on a specific function, but on analytic functions in general. I decided to write it because I… Read more »

Understanding a Query’s Execution Plan

HotSpot feature in SQL Developer

One of the most basic tasks you need to perform when tuning SQL statements is determining the causes of the performance problem, and to do that, you will most likely need to analyze the execution plan of the problematic statement. In this article, I cover the basics of execution plans,… Read more »

The WITH clause to the rescue!

This time I’m just writing to tell you a story about the WITH clause, because it is really powerful and vastly underutilized. You can read the basics about the WITH clause in my previous article about subqueries. So, this is the story about how it helped a couple of guys… Read more »

Oracle Inner Join Syntax : 4 different ways

I’ve worked with Oracle databases for many years, and during this time I have seen code written by lots of different people. One thing I have noticed is that with few exceptions, people who started working with Oracle many years ago tend to write joins in some way and people… Read more »