Estou baseando a maior parte disso apenas na tentativa de obter a resposta "correta", para que você descubra que existem alguns problemas de desempenho. Não faz sentido acelerar uma consulta incorreta.
Entenda os relacionamentos da tabela - a maioria será um para muitos. Conheça a tabela "muitos". Identifique os campos necessários para suas junções.
Pense nos cenários de junção ESQUERDA - selecione todos os funcionários e seus salários do mês passado. E se eles não recebessem um salário no mês passado?
Conheça o conjunto de resultados: 1) Em uma planilha, insira manualmente pelo menos um registro correto para sua consulta. 2) Escreva a consulta em um formulário simples o suficiente para identificar quantos registros devem ser retornados. Use os dois para testar sua consulta e garantir que ingressar em uma nova tabela não altere o resultado.
Divida sua consulta em partes gerenciáveis - Você não precisa escrever tudo de uma vez. Às vezes, consultas complexas podem ser apenas uma coleção de consultas simples.
Cuidado com os níveis mistos de agregação : se você precisar colocar valores mensais, trimestrais e acumulados no mesmo conjunto de resultados, precisará calculá-los separadamente em consultas agrupadas em valores diferentes.
Saber quando UNION Às vezes, é mais fácil dividir subgrupos em suas próprias instruções de seleção. Se você possui uma tabela combinada com gerentes e outros funcionários e, em cada coluna, é necessário executar instruções Case com base na associação a um desses grupos, pode ser mais fácil gravar uma consulta e união do gerente em uma consulta do funcionário. Cada um conteria sua própria lógica. Ter que incluir itens de tabelas diferentes em linhas diferentes é um uso óbvio.
Fórmulas complexas / aninhadas - tente recuar consistentemente e não tenha medo de usar várias linhas. "CASO QUANDO CASO QUANDO CASO QUANDO" o deixará louco. Aproveite o tempo para pensar sobre isso. Salve os cálculos complexos para o final. Obtenha os registros corretos selecionados primeiro. Em seguida, você ataca fórmulas complexas sabendo que está trabalhando com os valores certos. Ver os valores usados nas fórmulas ajudará a identificar áreas nas quais você deve contabilizar valores NULL e onde lidar com a divisão por erro zero.
Teste frequentemente ao adicionar novas tabelas para garantir que você ainda esteja obtendo o conjunto de resultados desejado e sabendo qual associação ou cláusula é a culpada.