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

Jak opravit chybějící pole v křížovém dotazu v Accessu

Opravte „Crosstab Missing Field Syndrom“ jednou provždy!

Běžným problémem, se kterým se mnoho lidí setkává při vytváření křížových dotazů, je to, že sloupec se zobrazí pouze v případě, že pro danou skupinu existují data. Pokud pro tuto skupinu neexistují žádná data, sloupec se nezobrazí.

Můžete to opravit tak, aby se sloupec zobrazoval vždy bez ohledu na to, zda pro daný sloupec existují data, či nikoli. Zde je příklad.

  • Před

    V tomto příkladu je dotaz na prodej seskupen podle měsíce. Pokud pro daný měsíc nejsou k dispozici žádné údaje o prodeji, daný měsíc se nezobrazí. Chybí celý sloupec. Takže skončíme s květnem, červnem, srpnem... atd.

    Ve skutečnosti je dalším problémem této zprávy to, že měsíce jsou uvedeny v abecedním pořadí (na rozdíl od chronologického pořadí každého měsíce). Je tedy trochu obtížné rozluštit všechna data.

  • Po

    Na výše uvedeném příkladu není nic špatného, ​​pokud je to vše, co požadujete.

    Ale s jednou malou úpravou by tento dotaz mohl zobrazit všechny měsíce bez ohledu na to, zda pro daný měsíc existují data. Navíc budou uvedeny v chronologickém pořadí podle data.

    To uděláme níže.

  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. Otevřete list vlastností

    Klikněte na Seznam vlastností na pásu karet (na kartě Návrh).

    Tím se otevře list vlastností na straně obrazovky.

  3. Přidat záhlaví sloupců

    V Záhlaví sloupců vlastnost, zadejte záhlaví sloupců tak, jak chcete, aby se zobrazovaly, a v pořadí, v jakém se mají zobrazovat.

    Každou hodnotu můžete také uzavřít do dvojitých uvozovek, ale pokud to neuděláte, Access to udělá za vás.

    Přidáním záhlaví sloupců explicitně sdělíte Accessu, která záhlaví sloupců má zobrazit. Takže i když pro daný sloupec nejsou žádná data, bude se stále zobrazovat.

    V tomto příkladu zadáváme každý měsíc oddělený čárkou.

  4. Výsledek dotazu

    Když spustíme dotaz, uvidíme, že všech dvanáct měsíců je nyní uvedeno jako záhlaví sloupců, i když pro daný měsíc nejsou k dispozici žádná data.


  1. Vytvářejte soubory PDF pomocí PLSQL v Oracle

  2. ACID vlastnosti výpisů a transakcí

  3. Je možné zadat podmínku v Count()?

  4. Jak funguje TRY_CAST() na serveru SQL