I can really recommend the Sams "Teach yourself..." books. They start right at the beginning, and give a solid grounding that you can then build on. Theres obviously thousands of tutorials on the net which can help you. Use the Sams to find out about SQL, how you use it and what it does, and then you can use the net to lookup answers to specific problems.
Make sure that you choose the right book for the type of SQL you are using it. Most of the base of SQL is the same whichever database server you use it, but they all have extended functions specific to the server eg Microsoft SQL Server or MySQL.
I wouldn't learn Access, because it shields you in some senses from the SQL - but this doesn't help you learn. It's also a bit not standard because its a desktop database package rather than a server, and it's not great for use on the net (I presume that you want to learn to use SQL for creating websites?)
MySQL is great to start with, because it's free unlike Microsofts SQL server. As a result, hosting with a MySQL database is a lot cheaper than hosting with an SQL server database. You can also download MySQL free from:
MySQL :: The world's most popular open source database , so can install it on your computer to practice with. PHP is great with MySQL as it has a number of commands built in to enable it to work with MySQL. These commands are used for opening connections on database server, running queries etc, you still need to learn SQL as well.
Theres an amazing amount you can do with SQL, and the more you learn, the less you have to do through code. It's not just for reading data from a database, you can perform complex calculations on the data, manipulate words and numbers and much more.