A lot of developers think that the performance of SQL statement depends merely on the quality of execution plan prepared by the Optimizer. This is only one side of the story. The other part of the story is even more important but unfortunately frequently totally neglected. It is related to the fact how efficient are the access paths to our data and the way how the SQL statement was coded. Writing efficient SQL statement requires some knowledge about SQL language intricacies, knowledge about the underlying data model and also some facts about the Optimizer. In this presentation we will discuss the required approach for preparing efficient and performant SQL statement. Of course we will also discuss available diagnostic mechanisms which can help us when things go in the wrong direction.