It is debatable whether SQL is a programming language, but it is evident that many programmers program in SQL...Although I'd agree that ANSI-SQL is not a programming language (It's not Turing complete)...
I do think that the stored procedure facilities (PL-SQL for Oracle, T-SQL for MS & Sybase SQLServer, and PL/PGSQL for PostgreSQL) do qualify as programming languages. Indeed, I wish the vendors would just flat out acknowledge them as programming languages and start giving us the functionality, extensibility and syntax that one expects from most other general purpose languages.
At the other end of programming, most languages that support SQL statements do so through the use of strings. This means that other than making sure the strings are properly formed, there is no compile time checking for the resulting queries. Being as queries form an integral part of the programs function - at least for DB intensive applications, it's odd that we still insist on runtime evaluation of SQL expressions.
Just as an aside, there's a introductory book on PostgreSQL available on the web for those interested in that server.