sql >> Databáze >  >> RDS >> Access

Jak převést normální dotaz na křížový dotaz v Accessu

Proměňte výběrový dotaz na křížový dotaz pro čitelnější sadu výsledků.

Někdy normální (výběrový) dotaz vrátí výsledky, kde některá pole musí být duplikována, aby se zobrazila všechna data.

Křížový dotaz vám umožňuje seskupit výsledky dotazu způsobem, který odstraňuje duplicitní hodnoty, a prezentuje výsledky způsobem, který usnadňuje jejich čtení a dešifrování.

Zde je příklad.

  • Normální (vybrat) dotaz

    Tento dotaz zobrazuje měsíční prodeje produktů z každého města.

    Protože existuje mnoho měsíců, každé město musí být duplikováno pro každý měsíc prodeje.

  • Crosstab Query

    Zde jsou stejné výsledky, ale tentokrát zobrazené pomocí křížového dotazu.

    V tomto dotazu byly měsíce přesunuty nahoru jako záhlaví sloupců. Nyní stačí každé město zobrazit pouze jednou, protože měsíce jsou uvedeny ve sloupcích.

Zde je návod, jak převést první (výběrový) dotaz na druhý (křížový) dotaz.

  1. Otevřete dotaz v návrhovém zobrazení

    V navigačním podokně klikněte pravým tlačítkem na dotaz a vyberte Návrhové zobrazení z kontextové nabídky.

    Tím se dotaz otevře v návrhovém zobrazení.

    Pokud již máte dotaz otevřený v zobrazení datového listu, můžete jednoduše přepnout do zobrazení návrhu.

  2. Převést dotaz

    Klikněte na Crosstab z Typ dotazu skupiny na pásu karet (na kartě Návrh).

    To okamžitě převede dotaz z výběrového dotazu na křížový dotaz.

    Můžete také kliknout pravým tlačítkem kdekoli v podokně diagramu a vybrat Typ dotazu> Křížový dotaz z kontextové nabídky.

  3. Přidejte kritéria křížové tabulky

    Nyní můžete vidět, že Crosstab řádek byl přidán do spodního podokna kritérií (a Zobrazit řádek byl odstraněn).

    Crosstab řádek umožňuje určit, která pole se zobrazí jako záhlaví řádků a která pole se zobrazí jako záhlaví řádků.

    Celkem řádek umožňuje určit, jak budou výsledky seskupeny, a také jakékoli výrazy/funkce, které se mají použít na dané pole.

    V tomto příkladu Město lodi pole je záhlaví řádku a Datum objednávky pole je záhlaví sloupce.

    Všimněte si, že toto pole je také formátováno pomocí Format() funkce, takže data jsou zobrazena jako měsíce (a výsledky jsou seskupeny podle měsíce).

  4. Výsledek dotazu

    Když spustíme dotaz, vidíme, že měsíce jsou uvedeny jako záhlaví sloupců a výsledky jsou kompaktnější.

Chybí pole?

Chcete-li zobrazit všechny sloupce bez ohledu na to, zda pro daný sloupec existují data, viz Oprava chybějících polí v křížovém dotazu.

Použití této techniky na výše uvedený dotaz povede k zobrazení všech 12 měsíců v roce, i když některé měsíce nemají žádná data k zobrazení.


  1. Zabraňte ukládání změn, které vyžadují opětovné vytvoření tabulky, negativním účinkům

  2. Může cizí klíč odkazovat na nejedinečný index?

  3. Jak mohu opravit tuto chybu:není podporován SQL92?

  4. Jak exportovat výsledek dotazu do Excelu v Oracle SQL Developer?