Typkonvertering

Den här artikeln introducerar funktioner för typkonvertering och deras användning i Tableau. Den visar även hur du kan skapa en typkonverteringsberäkning med hjälp av ett exempel.

Varför använda typkonverteringsfunktioner

Med funktionerna för typkonvertering kan du konvertera fält från en datatyp till en annan (detta kallas ibland ”casting” på engelska). Om du till exempel har datuminformation i ett fält vars datatyp är sträng kan du inte använda det fältet i datumberäkningar om inte fältets datatyp ändras till datum.

Om du till exempel vill använda ett fält vars datatyp är sträng i en DATEDIFF-funktion måste du också använda en datatypkonvertering för datum:

DATEDIFF('day', [Date Field], DATE([String Date Field]) )

Om DATE-funktionen inte ändrar datatypen visas ett felmeddelande om att ”DATEDIFF anropas med (sträng, datum, sträng)”.

Ett beräkningsfel som visar ett typkonverteringsfel

Tips: Fält har Datatyper i rutan Data. I många fall behöver du inte använda någon typkonverteringsfunktion alls. Du kan ändra fältets datatyp genom att klicka på ikonen. I vissa fall kan det dock vara praktiskt att ändra datatypen enbart för en viss beräkning, annars kanske Tableau inte kan konvertera fältets innehåll till den önskade datatypen korrekt (till exempel kanske datumformatet inte kan identifieras). I så fall skulle du behöva använda en typkonverteringsfunktion som de nedanstående.

Typkonverteringsfunktioner i Tableau

DATE

SyntaxDATE(expression)
UtdataDatum
DefinitionNär ett nummer, en sträng eller ett datumuttryck anges returernas ett datum.
Exempel
DATE([Employee Start Date])
DATE("September 22, 2018") 
DATE("9/22/2018")
DATE(#2018-09-22 14:52#)
Obs!

Till skillnad från DATEPARSE(Länken öppnas i ett nytt fönster) behöver du inte ange något mönster, eftersom DATE automatiskt identifierar många standarddatumformat. Om DATE dock inte känner igen inmatningen kan du försöka använda DATEPARSE och ange formatet.

MAKEDATE(Länken öppnas i ett nytt fönster) är en annan liknande funktion, men MAKEDATE kräver inmatning av numeriska värden för år, månad och dag.

DATETIME

SyntaxDATETIME(expression)
UtdataDatum/tid
DefinitionNär ett nummer, en sträng eller ett datumuttryck anges returernas datum/tid.
Exempel
DATETIME("April 15, 2005 07:59:00") = April 15, 2005 07:59:00

FLOAT

SyntaxFLOAT(expression)
UtdataFlyttalsvärde (decimalt)
DefinitionSänder argumentet som ett flyttalsnummer.
Exempel
FLOAT(3) = 3.000
Obs!Se även INT, som returnerar ett heltal.

INT

SyntaxINT(expression)
UtdataHeltal
DefinitionSänder argumentet som ett heltal. För uttryck trunkerar den här funktionen resultat till närmaste heltal, mot noll.
Exempel
INT(8/3) = 2
INT(-9.7) = -9
Obs!

När en sträng konverteras till ett heltal konverteras det först till ett flyttal och avrundas sedan.

Se även FLOAT, som returnerar ett decimaltal.
Se även ROUND(Länken öppnas i ett nytt fönster), CEILING(Länken öppnas i ett nytt fönster) och FLOOR(Länken öppnas i ett nytt fönster)

MAKEDATE

SyntaxMAKEDATE(year, month, day)
UtdataDatum
DefinitionReturnerar ett datumvärde som konstruerats från angivet år, angiven månad och angiven dag.
Exempel
MAKEDATE(1986,3,25) = #1986-03-25#

Tänk på att felaktigt inmatade värden justeras till ett datum, till exempel MAKEDATE(2020,4,31) = May 1, 2020 i stället för att returnera ett fel om att den 31 april inte finns.

Obs!

Tillgängligt för Tableau-dataextrakt. Kontrollera om det är tillgängligt i andra datakällor.

MAKEDATE kräver numeriska inmatningar för delarna av ett datum. Om dina data är en sträng som ska vara ett datum kan du prova DATE-funktionen. DATE känner automatiskt igen många standarddatumformat. Om DATE inte känner igen inmatningen kan du prova att använda DATEPARSE.

MAKEDATETIME

SyntaxMAKEDATETIME(date, time)
UtdataDatum/tid
DefinitionReturnerar datum/tid som kombinerar ett datum och en tidpunkt. Datumet kan vara ett datum, datum/tid eller en sträng. Tidpunkten måste vara datum/tid.
Exempel

MAKEDATETIME("1899-12-30", #07:59:00#) = #12/30/1899 7:59:00 AM#

MAKEDATETIME([Date], [Time]) = #1/1/2001 6:00:00 AM#

Obs!

Den här funktionen finns endast tillgänglig för MySQL-kompatibla anslutningar (för Tableau är dessa MySQL och Amazon Aurora).

MAKETIME är en liknande funktion som är tillgänglig för Tableau-dataextrakt och vissa andra datakällor.

MAKELINE

SyntaxMAKELINE(<Spatial Point1>,<Spatial Point2>)
UtdataGeometrispatialt objekt (linje)
DefinitionGenererar en linjemarkering mellan två punkter.
Exempel
MAKELINE(OriginPoint, DestinationPoint)
MAKELINE( MAKEPOINT(OriginLat],[OriginLong]) , MAKEPOINT([DestinationLat],[DestinationLong] )
Obs!Användbart för att ta fram ursprung-destinationskartor eller för att med MAKEPOINT förvandla latitud- och longitudkoordinater till spatiala objekt.

MAKEPOINT

SyntaxMAKEPOINT(<latitude>, <longitude>)
UtdataGeometrispatialt objekt (punkt)
DefinitionKonverterar data från latitud- och longitudkolumner till spatiala objekt.
Exempel
MAKEPOINT([AirportLatitude],[AirportLongitude])
Obs!

Med MAKEPOINT kan du aktivera en datakälla spatialt, så att du kan koppla den till en spatialfil med hjälp av en spatial koppling. Mer information finns i Koppla spatialfiler i Tableau.

För att använda MAKEPOINT måste dina data innehålla latitud- och longitud-koordinater.

MAKETIME

SyntaxMAKETIME(hour, minute, second)
UtdataDatum/tid. Läs det som står under Obs!.
DefinitionReturnerar ett datumvärde utifrån timme, minut och sekund som har angetts.
Exempel
MAKETIME(14, 52, 40) = #1/1/1899 14:52:40#
Obs!

Eftersom Tableau inte stöder en tidsdatatyp, endast datum och tid, är utdatan datum och tid. Fältets datumdel kommer att vara 1/1/1899.

Liknande funktion som MAKEDATETIME, som endast är tillgänglig för MYSQL-kompatibla anslutningar.

STR

SyntaxSTR(expression)
UtdataSträng
DefinitionSänder argumentet som en sträng.
Exempel
STR([ID])

Konvertera booleska uttryck

Ett booleskt uttryck kan konverteras till ett heltal, ett flyttal eller en sträng, men inte till ett datum.

  • True mappar till 1, 1,0 eller ”1”
  • False mappar till 0, 0,0 eller ”0”
  • Unknown mappar till Null

Skapa en typkonverteringsberäkning

Följ stegen nedan för att läsa hur du skapar en typkonverteringsberäkning.

  1. I Tableau Desktop ansluter du till den sparade datakällan Urval - Superstore, som ingår i Tableau.
  2. Navigera till ett arbetsblad.
  3. Välj Analys > Skapa beräknat fält.
  4. I beräkningsredigeraren som öppnas konverteras postnummerfältet från en siffra till en sträng:
    • Namnge det beräknade fältet, postnummersträng.
    • Ange följande formel:

      STR([Postal Code])

    • Klicka på OK när du är klar.

Det nya beräknade fältet visas under Dimensioner i rutan Data. Precis som med de andra fälten kan du använda detta i en eller flera visualiseringar.

Genom att konvertera det här fältet från ett tal till en sträng så ser du till att Tableau behandlar det som en sträng och inte ett tal (och därför inte aggregerar det).

Se även

Datatyper

Konvertera ett fält till ett datumfält

Formatera beräkningar i Tableau

Funktioner i Tableau

Tableau-funktioner (i bokstavsordning)

Tableau-funktioner (efter kategori)

Tack för din feedback!Din feedback har skickats in. Tack!