Sări la conținut
Complet local

Extractor de tabele și coloane SQL

Listează toate tabelele, join-urile și coloanele pe care le citește o interogare SQL, grupate după clauză.

Intrare
Ieșire

Extractor de tabele și coloane SQL

Lipește o interogare SELECT SQL și această unealtă citește exact ceea ce atinge: ce tabele consultă, cum sunt conectate acele tabele, și ce coloane vin din lista SELECT, din clauza WHERE, din GROUP BY și din ORDER BY. A fost construită pentru momentul în care moștenești o interogare de raport, un endpoint lent, sau migrația altcuiva și trebuie să cunoști adevărata sa amprentă înainte de a schimba ceva.

Aliasurile de tabel sunt rezolvate automat, deci "o.total" într-o interogare care începe cu "FROM orders o" este raportat cu adevăratul nume al tabelului. Fiecare JOIN este listat cu tipul său — inner, left, right, full, cross, sau un join vechi în stil comma — alături de condiția ON sau lista USING, pentru ca forma interogării să fie vizibilă. Dezactivează "Afișează coloane din WHERE / GROUP BY / ORDER BY" pentru a vedea doar ceea ce este selectat, sau dezactivează "Afișează condițiile de join" pentru a păstra lista de join-uri. Comută ieșirea între o vizualizare generală după clauză și o listă de dependințe plată mai potrivită pentru documentare.

Expresiile cu tabel comun (WITH …) și interogările secundare din clauza FROM sunt de asemenea recunoscute: o CTE este listată cu tabelele pe care le citește propria corpul, și un tabel derivat apare ca o interogare secundară. Când o interogare îmbină două sau mai multe tabele și o coloană nu are prefix de tabel, unealta nu poate ști cui îi aparține — cu "Avertizează cu privire la coloane fără tabel" activat, acea coloană este semnalată. Lipește mai multe declarații separate prin punct și virgulă și fiecare este numerotată și analizată independent; orice lucru care nu este o interogare SELECT este notat și sărit.

Acesta este un cititor de modele de text, nu o conexiune la bază de date: nu execută niciodată SQL, nu se conectează niciodată la un server, și interogarea nu pleacă niciodată din browserul tău. Este sigur să lipi interogări de producție, inclusiv cele cu adevărate nume de tabele și coloane. Când ai terminat, copiază raportul, descarcă ca fișier .txt, sau trimite la alt instrument pentru a continua munca.

FAQ

Execută sau validează SQL-ul?
Nu. Citește interogarea ca text pentru a găsi referințe de tabel, join și coloană — nu execută niciodată nimic pe o bază de date, deci funcționează chiar și pe SQL pentru care nu ai o conexiune în acest moment.
Cum știe cui îi aparține o coloană?
Construiește o hartă de aliasuri din clauzele FROM și JOIN, deci "o.id" se rezolvă la "orders" dacă interogarea are "FROM orders o". O coloană fără prefixă este atribuită singurei tabele în domeniu, sau semnalată ca ambiguă atunci când sunt mai mult decât una.
Acceptă JOIN-uri, CTE-uri și interogări secundare?
Da. Fiecare tip de JOIN este recunoscut cu condiția lui, o clauză WITH este separată ca un CTE numit cu tabelele pe care le citește, și o interogare secundară din clauza FROM este listată ca un tabel derivat mai degrabă decât unul real.
Pot să lipesc mai mult de o interogare odată?
Da. Separă declarațiile cu punct și virgulă și fiecare este numerotată și analizată independent. O declarație care nu este o interogare SELECT este notată mai degrabă decât citită greșit.
SQL-ul meu este încărcat undeva?
Nu. Parsarea se execută în întregime în browserul tău — interogarea ta, inclusiv orice adevărate nume de tabele și coloane, nu pleacă niciodată din dispozitivul tău.