My intention with this article was to highlight some of the more common mistakes that I've seen people make when coding SQL. The list reflects my direct experience working with different development teams and developers, performing code review sessions, and so on, as well as the issues I see every day on the newsgroups and forums. The list of common mistakes is far from exhaustive, and is presented in no particular order of severity.

Here is the list:

1.NULLs and the NOT IN predicate
2.Functions on indexed columns in predicates
3.Incorrect subquery column
4.Data type mismatch in predicates
5.Predicate evaluation order
6.Outer joins and placement of predicates
7.Subqueries that return more than one value
8.Use of SELECT *
9.Scalar user-defined functions
10.Overuse of cursors

The examples are presented using SQL Server's Transact-SQL dialect, but most of the concepts are valid in any SQL implementation.

Download from the below Link :
http://www.4shared.com/file/145616795/7f59593c/SQL.html