Dados de retorno de consulta SQL de várias tabelas

Eu gostaria de saber o seguinte:

Como obter dados de várias tabelas no meu banco de dados?Que tipos de métodos existem para fazer isso?o que são junções e sindicatos e como eles são diferentes uns dos outros?Quando devo usar cada um em comparação com os outros?

Estou planejando usar isso no meu (por exemplo - PHP) aplicativo, mas não quer executar várias consultas no banco de dados, quais opções eu tenho para obter dados de várias tabelas em uma única consulta?

Nota: Eu estou escrevendo isso como eu gostaria de ser capaz de linkar a um guia bem escrito sobre as inúmeras questões que eu constantemente encontro na fila do PHP, então eu posso linkar isso para mais detalhes quando eu postar uma resposta.

As respostas cobrem o seguinte:

Parte 1 - Junções e UniõesParte 2 - SubqueriesParte 3 - Truques e Código EficienteParte 4 - Subconsultas na cláusula FromParte 5 - Saco Misto de Truques de John

questionAnswers(6)

yourAnswerToTheQuestion