I registered on this site about a year ago. Before that my knowledge of SQL just let me join two tables using JOIN statement. And even then I used Access Query Builder for the most part. Implementing of all business logic in my company software required skills of working with Recordset objects (DAO, ADO).
When solving problems on this site I’ve got an invaluable experience of building SQL queries. Once I rewrote one of modules of a pricing application using my new knowledge. The result exceeded all expectations. The time of procedure execution decreased by hundreds of times! I think it speaks for itself. I think that certain IT professionals need not only to have an idea of SQL but to know it.
There are no projects as good as “SQL exercises”. Of course, they may exist, but this project is a unique one. It offers practical work which let students to acquire a deep and working knowledge. There is another benefit. Solving the problems of SQL-EX at least supports mental abilities (yes, yes, they become weaker eventually) and even develop them. Many exercises are hard, and one has, as they say, to rack his brains over the solution. I have felt again like a school boy, sent to a competition on mathematics :)
It should be noted that a lot of interesting and smart people are present at the site forum. Its atmosphere is warm and friendly. Contentious issues cause a discussion, not a dispute nor outright insults, like on some forums (guess which :)).
So, I say great thanks to the “SQL exercises” team. Especially I thank the project head Sergey Moiseyenko.
My acquaintance with site sql-ex began four years ago when I started to work. One of my friends told me, when you solve one hundred tasks you will become a good specialist. So I started this trip. And I was not disappointed! Because:
1. solving tasks at sql-ex is very efficient: after solving the problem it is possible to see how other guys solved it;
2. support and the people are very friendly;
3. rating system really motivates.
I want to thank all developers of the site and all those who helps to develop such a wonderful resource that can be used not only for teaching but also for leisure.
Dmitriy Sabitov (railgun3r),
Goverment Organization "Territorial fund of information on Natural Resources and Environment Protection of the Republic of Komi", specialist (entry level programmer), 05/10/2011
As a participant of third stage, who "fit" at the 31 th position (this is not the end XD) in the TOP100 and who resolved exercise number 143 (most rated among all exercises), I also would like to write a few words of appreciation project.
Firstly, when I first got into web-address bar "sql-ex.ru" I did not know about SQL practically nothing (Perhaps only the basic operators). I struggled with the learning phase for several months. I read the forum, I pestered tech support, asking for tips on difficult tasks. Only because it was terribly interesting to solve ingenious puzzles. And because I wanted to prepare to pass the exam in college. Then I even managed to perform tasks on rating stage (1'st and 2'nd) and get the Basic Requirement sertificate. However, in the end, I accidentally slept through an exam. *fail* ))), but it does not matter ...
It is important that this project really helped me. I learned about "sql-ex" by a fluke. "sql-ex" helped me learn how to write queries of any complexity. In fact, it was just fun to write sql-queries. Though, I thought that these skills (construct most hardest sql-queries) obviously don't need in my life. Because SQL is normally used only for simple selections from tables of local DB or web-DB. NOTHING OF THE KIND!!! As soon as I got a job "entry-level programmer" I understand how important is it to construct most hardest sql-queries. Often I am asked to write a crazy sql-queries with a mix of a dozen tables, with a variety of tricky partitions, etc... (Just for reporst or something else...). Often when I working it is necessary to use methods like "For XML Path", "XML nodes", etc. These methods have the documentation, but they are very rare in the tutorial books. In the exercises on this site, these methods are very common.
In general, whole-heartedly thank the project and all who support and develop.
Perhaps, I am the one of the small group of people who had become to the sql-ex having only basic skills in SQL and have gone to the top of the rating. I had just changed my place of employment and I must re-train to an Oracle database programmer from an applied programmer mainly working with OpenGL on Delphi. It was impossible without confident knowledge of SQL. Then my senior colleague had told me about site with many intricate tasks to train on and also to gain a certificate, which helped my predecessor to get another job. "When the interviewer have known that the candidate owns an sql-ex certificate he wouldn`t ask any questions in SQL". I have clearly remembered his words that day.
I had received a task to get 150 points in two weeks. And I had made it, by solving tasks, reading FAQs, manuals and hints, and also by passing the learning stage. I had fulfilled the conditions of the BK certificate. After that I had approached to the "very difficult task", as I think, and I surrender. But in this time already I realized the educational power of this project. After two years I have returned to the site and see that I was creating very inefficient solutions. And then I feeled motivation to prove myself that I become "cooler". I had solved that task. And then I had solved next, and next. But there are too many tasks. And I decided to continue solving until I face task that I cannot solve.
I have never faced it. But from moment when I was solving "very difficult" 18th task (with no idea about what ranking function is) and to now, some strange transformation occurred. The notion of difficulty is moving back from me. It is difficult to aggregate symbolic expressions in one row? Do two- and three stage rankings? Calculate some sums with progressive total? Easy! The question in what one from algorithms is simpler readable and more effective.
When I had faced some "difficult" task, I was frightening by thought that there will more difficult tasks. Now I understand that it is great, because the solving of the next task makes the previous one simple and clear. For that I thank all of the authors and developers of SQL-ex, and the great site`s community also.
The site is absolutely unique, fully-fledged, completely free, and it is in advance. Good luck =)
Long time ago, I were hearing some words about this site from different people. They were saying that there is site with some intricate tasks which must be solved by the single SELECT statement.
Finally, at the one spring day my colleague brought me one of the famous tasks "about squares" (in that moment it was somewhere in the end of the first stage). The colleague asked me to solve this and gave me exact web-address of the source.
I had become a gratified owner of AR-certificate and the contestant of the third stage in an eight months. And in that time I was writing a New Year greetings to my colleagues in which I had written: "SQL-ex had become one of the brightest impressions of the outgoing year".
What is sql-ex for me?
First of all, it is the tasks, of course. Wordings of tasks are great! The imagination of task`s authors don`t stop to amaze me. They create more and more tasks.
Next, sql-ex is rating and certificate. One day I had tried to search my name on the Web: the first line returned by search engine was titled "Certified professionals in SQL (DML) at "SQL Exercises".
At last, it is a work of support service. They were answering to me every time: at weekends, at holydays, in the middle of night.
Forum of sql-ex is a certain story. Some of topics are more interesting to read than to solve corresponding tasks. When you go through the second certification threshold, you realize that you know all of people who have gone through too. The rivalry in TOP 20 is very friendly. In my opinion, forum of sql-ex is one of the most competent Russian forums.
I was not a novice in SQL when I had come to the site, and the BK certificate had been earned smoothly. At that time I had decided to get to the TOP 100 one day. The tasks of sql-ex had taught me more than the university course and several years of job.
Thanks!
Bezhaev Anatoly (Baser), PhD in Mathematics,
SB RAS (Russia, Novosibirsk), DataEast (Novosibirsk), co-author of the book "Variational Theory of Splines"
07/15/2010
Dear Sql-ex team, thank you for your great and useful work!
Plenty of non-forgettable impressions during various graduation steps! Many discoveries and findings! Here I hide some secrets to not to exclude the possibility for the new competitors to open these and other salts independently.
I think you allow me to tell some words about you site for new learners and competitors.
This educational site is also competitive one. To prove this, need to remark its multi-staged approach. Though, to begin solve tasks here you must not a full novice. I am imaging you to have a basic information technologies education, or to be a programmer or to understand you are extremely interested in SQL. You will get here what you want. As an award, as in common college you can achieve bachelor's degree or master's degree, and you can get PhD in SQL Data Manipulation too. The last is a joke certainly. But each joke contains only part of joke, as saying says.
Certainly this is a sort of imagination, because it is only online education. At this moment I consider the educational stages in following manner:
BR (Basic requirements, up to 64-th task) is an advanced bachelor's degree.
AR (All requirements, up to 125-th task) corresponds to master's degree, and your post-graduate course continuing up to 137-th task is finished with guard of you PhD degree by only one, but very complicated task 138.
The following tasks (139 and more) are for best specialists and lovers of puzzles.
I liked this SQL-ex online education, because it is honest and fair education and competition. And it is really free of charge. Now we can see more than 20 thousands of total contestants, and several hundreds of every day participants, who solve hundreds of tasks, arising their sql-level. You may not register at all. The only limitation: you cannot participate in competition.
The time of education depends only from you. You are not hasted. The basic principal is "solve the task himself, discuss it after on forum and get the next task". As a help, site organizers present a remarkable e-manual "SQL Task and Solutions" by the site header Moiseenko S.I. This book gives not only solid introduction to sql data manipulation language, but presents detailed instructions to task's solutions of the first education level. You do not find final solution, because you must achieve this solution yourself (only one own step). It is a basic principle of the educational site SQL-ex. Moreover, each stage of education is a competition too, be fair in this too .
The education is not only multi-stages, but step-by-step too. Sometimes complicated and simple tasks are alternated. It is not only for your relax and a mode of many years traditions. Site is not one-day appearance; it is a remarkable phenomenon, counting almost ten years history. Even you are a sql-novice (as was I three month ago) you may already feel self-reliance on first, second or third task. It is possible, that sql-specialists easily finish first stage. Do not stop on this, a lot of interesting ahead.
Tasks are very interesting. They are invented by site organizers and by best competitors. All the tasks are run careful analysis of organizers, sometimes months are required the task to reach the solvers. Formulations are valid and run through criticism of earlier solvers. Only two times I tried temptation to disprove formulation and was wrong.
Try yourself once more with SQL-EX in spite of your sql-experience, your position or age! You will feel unbelievable interest moving up to rating scale. It is not too hard on first tens task, if you are serious.
Additional education must be intensive too, not only stepwise and competitive. But it only depends from you, and it fits for one who got basic college education or has great experience. I recommend this for the students with anxiety. It is hard to combine this activity with intensive base work or education.
For post-graduate students and participants of certificate stages! You will meet with many interesting things, which can be referred to mathematical science disciplines: logics, sets and graph theory, time series, computer graphics and mathematical statistics. Do not bother and be proud of this simultaneously. I fact, only your intellect is important. Participants of second certification level reach truth fast and practically independent of previous education (before sql-ex). As an example; I do not reach high speed success on tasks that I consider in my high competency, but sometimes succeed in others.
Site SQL_EX is on Russian and English simultaneously. Read formulation of the task on both languages, if you are in doubts. I read on Russian, but some complicated tasks were simpler on English or they added understandings.
I express big gratitude all the team for supporting forums, task's authors and participants dividing their ideas on SQL Data Manipulation solution approach.
Hello developers of sql-ex.ru web project!
Let me express my great appreciation and respect to you (developers) for the initiative of creation, professional support and development of an educational internet resource (project) sql-ex.ru.
This resource helps me to grow in my profession: along with the growth of knowledge and abilities, he allows develop the practical skills of T-SQL language usage.
The staged certification allows me to say, that I have professional knowledge of the practical programming on T-SQL language, the designed for professional communication with the rapidly developing usage technologies of information resources of data banks.
The solving of provided a task allows me to acquire and maintain professional programming experience in T-SQL, and so it use relational model of data storage (it is base to building other systems based under same relational model) is possible to use the acquired skills and on those systems. It is important to note the creation of unique techniques and principles of solution of various tasks, as evidenced by saying, especially brightly appearing in a programming environment: Knowledge of the several principles releases from the knowledge of the set of facts.
Availability of quality and professional support and development of Internet resource and the availability of communication in the forums with more professional colleagues (they are guru, examples for imitation and professional growth) is a huge advantage in the further evolution of professional activities. Distrust is dissipate by phrase:
There is only one way to verify! Try it yourself!
I want to express special thanks to Sergey for his work and very operational support of my professional activities.
I am proud to consider you as my teacher (Master) in the capture of SQL Kung Fu.
Thanks!