Useiden päivämääräkenttien yhdistäminen | Tableau-ohjelmisto (2023)

Julkaistu:24. huhtikuuta 2017
Viimeisin muokkauspäivä:04 huhtikuuta 2023

Kysymys

Kuinka yhdistää useita päivämääräkenttiä yhdeksi akseliksi tai yhdeksi päivämääräotsikoksi.

Jokaisella tilauksella on esimerkiksi [Tilauspäivä] ja [Lähetyspäivä]. Lopullisena tavoitteena on näyttää joko viivakaavio tai ristitaulukko kuukausittain tehtyjen ja toimitettujen tilausten määrästä. Jos [Tilauksen päivämäärä] käytetään akselina tai otsikkona, kuukausittain lähetettyjen tilausten määrä on virheellinen ja päinvastoin.

Ympäristö

Tableau työpöytä

Vastaus

Liitteenä oleva esimerkkityökirja käyttää esimerkkitietojoukkoa Superstore kaikkien vaihtoehtojen esittelyyn.

NAPSAUTA LAAJENTAA RATKAISUA

Vaihtoehto 1: Kierrä päivämääräkenttiä
  1. Kierrä päivämääräkenttiä niin, että niissä on vain yksi kenttä, jossa on päivämäärätietoja, ja toinen kenttä, kuten "Tapahtuma", joka kertoo, onko tapahtuma "tilaus tehty" vai "tilaus lähetetty". Huomautus: joissakin tietolähteissä kierto voidaan tehdä. suoraan Tableau Desktopissa. Katso tarkemmat ohjeetPivot tiedot sarakkeista riveihin
  2. Napsauta hiiren kakkospainikkeella ja vedä [Pivot Field Values] Rivit-hyllylle
  3. Valitse Pudota kenttä -valintaikkunassa MY (Pivot Field Values) ja napsauta OK
  4. Napsauta hiiren kakkospainikkeella tietoruudussa [Pivot Field Names] ja valitse Aliakset…
  5. Anna Muokkaa aliaksia -valintaikkunassa Tilauspäivä- ja Lähetyspäivämäärälle kuvaava alias ja napsauta OK
  6. Vedä [Pivot Field Names] Sarakkeet-hyllylle
  7. Napsauta hiiren kakkospainikkeella ja vedä [Tilaustunnus] Marks-kortin tekstiin
  8. Valitse Pudota kenttä -valintaikkunassa CNTD (tilaustunnus) ja napsauta OK

NAPSAUTA LAAJENTAA RATKAISUA

Vaihtoehto 2: Käytä LOD-laskentaa

Tämä vaihtoehto edellyttää, että jokaisessa päivämääräkentässä on vähintään yksi tietue jokaiselle näkymän päivämäärälokerolle. Tässä esimerkissä jokainen rivi on kuukausi, joten sekä [Tilauspäivä]- että [Lähetyspäivä]-kohdassa on oltava vähintään yksi tilaus jokaiselle kuukaudelle.

  1. Valitse yksi päivämääräkenttä luodaksesi päivämääräakselin tai otsikot. Tässä esimerkissä käytetään [tilauspäivämäärä]
  2. Napsauta hiiren kakkospainikkeella ja vedä [Tilauksen päivämäärä] Rivit-hyllylle
  3. Valitse Pudotuskenttä -valintaikkunassa MY (tilauspäivämäärä) sinisellä #-kuvakkeella ja napsauta OK
  4. Napsauta hiiren kakkospainikkeella ja vedä [Tilaustunnus] Marks-kortin tekstiin
  5. Valitse Pudota kenttä -valintaikkunassa CNTD (tilaustunnus)
  6. Napsauta hiiren kakkospainikkeella otsikkoa "Erillinen tilaustunnuksen määrä" näkymässä ja valitse Muokkaa aliasta…
  7. Kirjoita Muokkaa aliasta -valintaikkunaan uusi nimi ja napsauta OK
  8. Luo laskettu kenttä, jonka nimi on esimerkiksi "Tilaukset lähetetty" seuraavankaltaisella laskutoimituksella:

    MIN(
    JOS DATETRUNC('kuukausi', [tilauspäivä]) = DATETRUNC('kuukausi', [lähetyspäivämäärä])
    SIIN { KIINTEÄ PÄIVÄMÄÄRÄ('kuukausi', [lähetyspäivä]) : COUNTD([tilaustunnus]) }
    LOPPU
    )

    9. Lisää kenttä näkymään kaksoisnapsauttamalla [Orders Shipped] tietoruudussa

NAPSAUTA LAAJENTAA RATKAISUA

Vaihtoehto 3: Käytä päivämäärätelineitä

Tämä vaihtoehto edellyttää, että yksi päivämääräkenttä tulee aina ennen toista päivämääräkenttää, ja se toimii parhaiten, kun kaksi päivämääräkenttää määrittävät alueen.

  1. Luo taulukko, joka sisältää pääluettelon kaikista mahdollisista päivämääristä, jotka liitetään alkuperäiseen datayhteyteen. Tässä esimerkissä taulukon nimi on "Päiväpäiväluettelo".
  2. Siirry Tableau Desktopin Tietolähde-välilehteen
  3. Lisää Taulukko 1 -taulukko kanvasalueelle
  4. Liity-valintaikkunassa toimi seuraavasti:
    1. Valitse Vasen
    2. Valitse Tietolähde-kohdasta Tilauspäivä
    3. Valitse taulukosta 1 Päivämäärä
    4. Napsauta yhtäläisyysmerkkiä ja valitse <=
    5. Napsauta Tietolähde-kohdassa Lisää uusi liittymislauseke ja valitse Lähetyspäivä
    6. Valitse taulukosta 1 Päivämäärä
    7. Napsauta yhtäläisyysmerkkiä ja valitse >=
  5. Valitse Analyysi > Luo laskettu kenttä
  6. Toimi seuraavasti avautuvassa Laskettu kenttä -valintaikkunassa ja napsauta sitten OK:
    1. Nimeä laskettu kenttä. Tässä esimerkissä lasketun kentän nimi on "Tehdyt tilaukset"
    2. Luo kaavakenttään seuraavanlainen laskutoimitus:
      COUNTD(
      JOS DATETRUNC('kuukausi', [tilauspäivämäärä]) = DATETRUNC('kuukausi', [päivämäärä])
      SITTEN [tilaustunnus]
      LOPPU
      )
  7. Luo laskettu kenttä, jonka nimi on esimerkiksi "Tilaukset lähetetty" seuraavankaltaisella laskutoimituksella:
    COUNTD(
    JOS DATETRUNC('kuukausi', [lähetyspäivä]) = DATETRUNC('kuukausi', [päivämäärä])
    SITTEN [tilaustunnus]
    LOPPU
    )
  8. Napsauta hiiren kakkospainikkeella ja vedä [Päiväys] Rivit-hyllylle
  9. Valitse Pudota kenttä -valintaikkunassa MY(Päivämäärä) ja napsauta OK
  10. Vedä [Tilaukset] Marks-kortin tekstiin
  11. Lisää kenttä näkymään kaksoisnapsauttamalla [Orders Shipped] tietoruudussa

NAPSAUTA LAAJENTAA RATKAISUA

Vaihtoehto 4: Käytä tietojen yhdistämistä

Tämä vaihtoehto ei toimi tietyillä päivämäärillä.

  1. Luo taulukko, joka sisältää pääluettelon kaikista mahdollisista päivämääristä, ja luo uusi yhteys kyseiseen luetteloon. Tässä esimerkissä yhteys on nimeltään "Taulukko1 (pääpäivämääräluettelo)"
  2. Siirry kohtaan Tiedot > Näyte - Superstore > Kopioi. Tässä esimerkissä olen nimennyt kaksi kappaletta "Näyte - Superstore" nimellä "Näyte - Superstore (linkki tilauspäivänä)" ja "Näyte - Superstore (linkki lähetyspäivänä)" selvyyden vuoksi.
  3. Siirry kohtaan Tiedot > Muokkaa suhteita…
  4. Suhteet-valintaikkunassa toimi seuraavasti:
    1. Valitse ensisijaiseksi tietolähteeksi Taulukko1 (pääpäivämääräluettelo)
    2. Valitse toissijaiseksi tietolähteeksi Näyte - Superstore (linkki tilauspäivänä)
    3. Valitse Mukautettu-valintanappi
    4. klikkaa Lisää…
  5. Tee lisää/muokkaa kenttäkartoitusta -valintaikkunassa seuraavasti:
    1. Laajenna päivämääräasetukset napsauttamalla Päivämäärä-kohdan vieressä olevaa nuolta
    2. Valitse päivämäärätaso, joka vastaa näkymässä käytettyä tarkinta päivämäärätasoa. Tässä esimerkissä näkymä käyttää MY(Päivämäärä).
    3. Napsauta oikeanpuoleisessa ruudussa Tilauspäivämäärän vieressä olevaa nuolta
    4. Valitse tilauspäivämäärälle vastaava päivämäärätaso
    5. Napsauta OK
  6. Toista vaiheet 4-5 käyttämällä "Näyte - Superstore (linkki lähetyspäivänä)" toissijaisena tietolähteenä ja lisäämällä suhteen MY(Päiväys) = MY(lähetyspäivä)
  7. Napsauta OK sulkeaksesi Suhteet-valintaikkunan
  8. Napsauta uudessa laskentataulukossa hiiren kakkospainikkeella ja vedä [Päivämäärä] "Sheet1 (pääpäivämääräluettelo)" -tietoyhteydestä näkymään
  9. Valitse Pudota kenttä -valintaikkunassa MY(Päivämäärä) ja napsauta OK
  10. Napsauta hiiren kakkospainikkeella otsikkoa "Erillinen tilaustunnuksen määrä" näkymässä ja valitse Muokkaa aliasta…
  11. Kirjoita Muokkaa aliasta -valintaikkunaan kuvaavampi nimi ja napsauta OK
  12. Napsauta hiiren kakkospainikkeella ja vedä [Tilaustunnus] "Näyte - Superstore (linkki tilauspäivämäärä)" -tietolähteestä Marks-tarrassa olevaan tekstiin
  13. Valitse Pudota kenttä -valintaikkunassa CNTD (tilaustunnus) ja napsauta OK
  14. Napsauta hiiren kakkospainikkeella ja vedä [Tilaustunnus] "Näyte - Superstore (linkki lähetyspäivämäärä)" -tietolähteestä Marks-tarrassa olevaan tekstiin
  15. Valitse Pudota kenttä -valintaikkunassa CNTD (tilaustunnus) ja napsauta OK
  16. Vedä CNTD (tilaustunnus) Marks-kortin yksityiskohdista näkymän numeroiden päälle ja pudota kenttä
  17. Kirjoita Muokkaa aliasta -valintaikkunaan kuvaavampi nimi ja napsauta OK

lisäinformaatio

Huomautuksia vaihtoehdosta 2 (yksityiskohtaisuuslauseke):
  • Jokaisessa päivämääräkentässä on oltava vähintään yksi tietue näkymässä käytetylle päivämäärätasolle
  • FIXED-lauseke palauttaa lähetettyjen tilausten kokonaismäärän kullekin kuukaudelle [Lähetyspäivä] riippumatta siitä, missä [Lähetyspäivä]-kuukausi näkyy näkymässä. Esimerkiksi helmikuussa lähetetyt tilaukset tehtiin sekä tammi- että helmikuussa. Siten FIXED-lauseke itsessään palauttaisi 59 tilausta sekä MY(tilauspäivä) = tammikuu että MY(tilauspäivä) = helmikuu.
  • Koko IF-lause on kääritty muotoon MIN(), jotta vältetään ongelma, jossa LOD-lausekkeet palauttavat päällekkäisiä arvoja IF-käskyn sisällä.

Huomautuksia vaihtoehdosta 3 (päiväteline):
  • On myös mahdollista listata kaikki päivämäärät korkeammalla päivämäärätasolla, kuten kunkin kuukauden ensimmäinen päivä. Käytä sitten vaiheissa 4-2 ja 4-5 liitoslaskentaa, joka asettaa päivämäärän alkuperäisessä taulukossa oikealle päivämäärätasolle, kuten DATETRUNC('kuukausi', [Tilauksen päivämäärä])
  • Jos alkuperäiseen tietolähteeseen ei ole mahdollista lisätä taulukkoa kaikilla päivämäärillä, luo tietokannan välinen liitos ulkoiseen taulukkoon, joka sisältää kaikki päivämäärät. Tämä edellyttää päivittämistä Tableau Desktop 10.5:een tai uudempaan, jotta voidaan hyödyntää tietokantojen välisten liitosominaisuuden liitoslauseiden epätasa-arvoa.
  • Tämä vaihtoehto kopioi tiedot, mikä voi vaikuttaa muihin samaa tietolähdettä käyttäviin näkymiin
  • Tableau Prep 2021.3.1 -versiosta alkaen on mahdollista luoda päivämäärän rakennustelineitä Tableau Prepissä ilman päivämääräluettelon luomista. KatsoTäytä aukot peräkkäisissä tiedoissaohjeita varten
Huomautuksia vaihtoehdosta 4 (tietojen yhdistäminen):
  • Tietojen yhdistämisellä on monia rajoituksia. Jos tarvitset apua mahdollisiin ongelmiin, katsoTietojen yhdistämisen vianetsintä
  • Linkitettyjen päivämäärien on vastattava täsmälleen Suhteet-valintaikkunassa valitun tarkimman päivämäärätasoa
  • Eri tietolähteiden kenttien välisiä suhteita luotaessa kukin kenttä voidaan liittää vain yhteen toiseen kenttään kerrallaan, minkä vuoksi alkuperäinen tietolähde piti kopioida.
  • Kaikki kenttiin [Tilauspäivä] liittyvät kentät on vedettävä alkuperäisen tietolähteen kopiosta, joka on linkitetty MY(Päivämäärä) = MY(Tilauspäivämäärä) ja päinvastoin kaikille [lähetyspäivämäärä]-kentille.

Aktiivisten tietueiden näyttäminen ajan mittaan
Yhdistä tietosi
Luo yksityiskohtaisen tason ilmaisuja Tableaussa
CASE- ja IF-lausekkeet, jotka sisältävät yksityiskohtaisen ilmaisun tason, tuottavat odottamattomia tuloksia

Kiitos palautteestasi artikkelin tehokkuudesta.

Napsauta tätä palataksesi tukisivullemme.

Avaa uusi kotelo

Avaa uusi tapaus

Jatka hakua

Napsauta tästä siirtyäksesi tukisivullemme.

Tietopohja

Saat yksityiskohtaisia ​​vastauksia ja vaiheittaiset ohjeet ongelmiisi ja teknisiin kysymyksiisi.

Yhteisö

Etsi ja jaa ratkaisuja aktiivisen yhteisömme kanssa foorumien, käyttäjäryhmien ja ideoiden kautta.

Tuoteohje

Selaa täydellistä luetteloa tuoteoppaista ja oppaista. Saatavilla online-, offline- ja PDF-muodoissa.

Koulutus ja opetusohjelmat

Opi hallitsemaan Tableaun tuotteet tilaus-, live- tai luokkahuonekoulutuksemme avulla.

Top Articles
Latest Posts
Article information

Author: Otha Schamberger

Last Updated: 04/11/2023

Views: 6295

Rating: 4.4 / 5 (55 voted)

Reviews: 86% of readers found this page helpful

Author information

Name: Otha Schamberger

Birthday: 1999-08-15

Address: Suite 490 606 Hammes Ferry, Carterhaven, IL 62290

Phone: +8557035444877

Job: Forward IT Agent

Hobby: Fishing, Flying, Jewelry making, Digital arts, Sand art, Parkour, tabletop games

Introduction: My name is Otha Schamberger, I am a vast, good, healthy, cheerful, energetic, gorgeous, magnificent person who loves writing and wants to share my knowledge and understanding with you.