Sto basando la maggior parte di questo sul solo tentativo di ottenere la risposta "giusta", quindi potresti scoprire che ci sono alcuni problemi di prestazioni. Inutile accelerare una query errata.
Comprendi le relazioni tra le tabelle : la maggior parte sarà una a molte. Conosci la tabella "molti". Identifica i campi richiesti per i tuoi iscritti.
Pensa agli scenari di partecipazione a SINISTRA : seleziona tutti i dipendenti e la loro busta paga dello scorso mese. E se non avessero ricevuto uno stipendio il mese scorso?
Conoscere il set di risultati: 1) In un foglio di calcolo, inserire manualmente almeno un record corretto per la query. 2) Scrivi la query in una forma abbastanza semplice per identificare quanti record devono essere restituiti. Utilizzare entrambi questi per testare la query per assicurarsi che l'unione a una nuova tabella non altera il risultato.
Suddividi la query in parti gestibili : non è necessario scriverla tutta in una volta. Le query complesse a volte possono essere solo una raccolta di query semplici.
Fai attenzione ai livelli misti di aggregazione : se devi inserire valori mensili, trimestrali e da inizio anno nello stesso set di risultati, dovrai calcolarli separatamente in query raggruppate su valori diversi.
Sapere quando in UNION A volte è più semplice suddividere i sottogruppi nelle loro dichiarazioni selezionate. Se si dispone di una tabella mista con manager e altri dipendenti e su ciascuna colonna è necessario eseguire dichiarazioni Case basate sull'appartenenza a uno di questi gruppi, potrebbe essere più semplice scrivere una query Manager e unione su una query Employee. Ognuno conterrebbe la propria logica. Dover includere elementi di tabelle diverse in righe diverse è un uso ovvio.
Formule complesse / nidificate : prova a rientrare in modo coerente e non avere paura di utilizzare più righe. "CASO QUANDO CASO QUANDO CASO QUANDO" ti farà impazzire. Prenditi il tempo per pensarci bene. Salvare i calcoli complessi per ultimo. Ottieni prima i record corretti selezionati. Quindi attacchi formule complesse sapendo che stai lavorando con i giusti valori. Vedere i valori utilizzati nelle formule ti aiuterà a individuare le aree in cui devi tenere conto dei valori NULL e dove gestire la divisione per zero errori.
Prova spesso quando aggiungi nuove tabelle per assicurarti di ottenere ancora il set di risultati desiderato e di sapere quale join o clausola è il colpevole.