문자열 함수

이 문서에서는 Tableau의 문자열 함수와 관련 사용법을 소개합니다. 또한 예제를 사용하여 문자열 계산을 만드는 방법을 보여 줍니다.

문자열 함수를 사용하는 이유

문자열 함수를 사용하여 문자열 데이터(예: 텍스트로 구성된 데이터)를 조작할 수 있습니다.

예를 들어 고객의 이름 및 성을 모두 포함하는 필드가 있다고 가정합니다. 한 멤버는 Jane Johnson입니다. 이 경우 문자열 함수를 사용하여 모든 고객의 성을 가져와 새 필드에 저장할 수 있습니다.

계산은 다음과 비슷한 모양입니다.

SPLIT([Customer Name], ' ', 2)

즉, SPLIT('Jane Johnson' , ' ', 2) = 'Johnson'입니다.

Tableau에서 사용할 수 있는 문자열 함수:

함수

구문

정의

ASCII

ASCII(string)

string에서 첫 번째 문자의 ASCII 코드를 반환합니다.

예:

ASCII('A') = 65

CHAR

CHAR(number)

ASCII 코드 number로 인코딩되는 문자를 반환합니다.

예:

CHAR(65) = 'A'

CONTAINS

CONTAINS(string, substring)

주어진 문자열에 지정한 부분 문자열이 포함되어 있으면 true를 반환합니다.

예:

CONTAINS(“Calculation”, “alcu”) = true

ENDSWITH

ENDSWITH(string, substring)

주어진 문자열이 지정한 부분 문자열로 끝나면 true를 반환합니다. 후행 공백은 무시됩니다.

예:

ENDSWITH(“Tableau”, “leau”) = true

FIND

FIND(string, substring, [start])

string에서 substring의 인덱스 위치를 반환하거나, substring을 찾을 수 없으면 0을 반환합니다. 선택적 인수 start를 추가하면 함수가 인덱스 위치 start 앞에 표시되는 substring 인스턴스를 모두 무시합니다. 문자열에서 첫 번째 문자가 위치 1입니다.

예:

FIND("Calculation", "alcu") = 2
FIND("Calculation", "Computer") = 0
FIND("Calculation", "a", 3) = 7
FIND("Calculation", "a", 2) = 2
FIND("Calculation", "a", 8) = 0
FIND("Calculation", "a", 3) = 7
FIND("Calculation", "a", 2) = 2
FIND("Calculation", "a", 8) = 0

FINDNTH

FINDNTH(string, substring, occurrence)

문자열 내 부분 문자열에서 n번째 일치 항목의 위치를 반환합니다. 여기서, n은 occurrence 인수로 정의됩니다.

참고: FINDNTH는 일부 데이터 원본에 사용할 수 없습니다.

예:

FINDNTH("Calculation", "a", 2) = 7

LEFT

LEFT(string, number)

문자열에서 가장 왼쪽에 있는 문자 수를 반환합니다.

예:

LEFT("Matador", 4) = "Mata"

LEN

LEN(string)

문자열의 길이를 반환합니다.

예:

LEN("Matador") = 7

LOWER

LOWER(string)

모두 소문자로 구성된 string을 반환합니다.

예:

LOWER("ProductVersion") = "productversion"

LTRIM

LTRIM(string)

모든 선행 공백이 제거된 문자열을 반환합니다.

예:

LTRIM(" Matador ") = "Matador "

MAX

MAX(a, b)

 

ab의 최대값을 반환합니다(동일한 유형이어야 함). 일반적으로 숫자 비교에 사용되지만 문자열에도 사용됩니다. 문자열을 사용할 경우 MAX는 데이터베이스가 해당 열에 정의한 정렬 순서에서 가장 높은 값을 찾습니다. 인수가 하나라도 Null이면 Null을 반환합니다.

예:

MAX ("Apple","Banana") = "Banana"

MID

(MID(string, start, [length])

인덱스 위치 start에서 시작하는 문자열을 반환합니다. 문자열에서 첫 번째 문자가 위치 1입니다. 선택적 인수 length를 추가하면 반환된 문자열에 문자 수만 포함됩니다.

예:

MID("Calculation", 2) = "alculation"
MID("Calculation", 2, 5) ="alcul"

MIN

MIN(a, b)

ab의 최소값을 반환합니다(동일한 유형이어야 함). 일반적으로 숫자 비교에 사용되지만 문자열에도 사용됩니다. 문자열을 사용할 경우 MIN은 정렬 순서에서 가장 낮은 값을 찾습니다. 인수가 하나라도 Null이면 Null을 반환합니다.

예:

MIN ("Apple","Banana") = "Apple"

REPLACE

REPLACE(string, substring, replacement)

string에서 substring을 검색하여 replacement로 바꿉니다. substring이 없으면 문자열이 변경되지 않습니다.

예:

REPLACE("Version8.5", "8.5", "9.0") = "Version9.0"

RIGHT

RIGHT(string, number)

string에서 가장 오른쪽에 있는 문자 수를 반환합니다.

예:

RIGHT("Calculation", 4) = "tion"

RTRIM

RTRIM(string)

모든 후행 공백이 제거된 string을 반환합니다.

예:

RTRIM(" Calculation ") = " Calculation"

SPACE

SPACE(number)

지정된 number만큼 반복된 공백으로 구성된 문자열을 반환합니다.

예:

SPACE(1) = " "

SPLIT

SPLIT(string, delimiter, token number)

구분 기호 문자를 사용하여 문자열을 토큰 시퀀스로 분할하는 방식으로 문자열에서 부분 문자열을 반환합니다.

문자열은 구분 기호와 토큰이 교대로 나타나는 형식으로 해석됩니다. 따라서 구분 기호 문자가 ‘-‘인 문자열 abc-defgh-i-jkl에서 토큰은 abc, defgh, i 및 jlk입니다. 이들 항목을 토큰 1부터 토큰 4로 간주할 수 있습니다. SPLIT는 토큰 번호에 해당하는 토큰을 반환합니다. 토큰 번호가 양수인 경우 토큰은 문자열의 왼쪽 끝에서부터 계산되고, 토큰 번호가 음수인 경우 토큰은 오른쪽에서부터 계산됩니다.

예:

SPLIT (‘a-b-c-d’, ‘-‘, 2) = ‘b’
SPLIT (‘a|b|c|d’, ‘|‘, -2) = ‘c’


참고: 분할 및 사용자 지정 분할 명령을 사용할 수 있는 데이터 원본 유형은 Tableau 데이터 추출, Microsoft Excel, 텍스트 파일, PDF 파일, Salesforce, OData, Microsoft Azure Market Place, Google Analytics, Vertica, Oracle, MySQL, PostgreSQL, Teradata, Amazon Redshift, Aster Data, Google Big Query, Cloudera Hadoop Hive, Hortonworks Hive 및 Microsoft SQL Server입니다.

일부 데이터 원본은 문자열 분할에 제한이 있습니다. 다음 표에서는 음수 토큰 번호(오른쪽부터 분할)를 지원하는 데이터 원본과 데이터 원본에 따라 허용되는 분할 수에 제한이 있는지 여부를 보여 줍니다. 이러한 데이터 원본에서는 음수 토큰 번호가 지정되어 다른 데이터 원본에서는 유효한 SPLIT 함수가 다음 오류를 반환합니다. “오른쪽부터 분할하는 기능은 데이터 원본에서 지원되지 않습니다.”

 

데이터 원본 왼쪽/오른쪽 제약 조건 최대 분할 수 버전 제한
Tableau 데이터 추출 둘 다 제한 없음  
Microsoft Excel 둘 다 제한 없음  
텍스트 파일 둘 다 제한 없음  
Salesforce 둘 다 제한 없음  
OData 둘 다 제한 없음  
Google Analytics 둘 다 제한 없음  
Tableau 데이터 서버 둘 다 제한 없음 버전 9.0에서 지원됩니다.
Vertica 왼쪽만 10  
Oracle 왼쪽만 10  
MySQL 둘 다 10  
PostgreSQL 9.0 이전 버전에서는 왼쪽만, 9.0 이상 버전에서는 둘 다 10  
Teradata 왼쪽만 10 버전 14 이상
Amazon Redshift 왼쪽만 10  
Aster Database 왼쪽만 10  
Google BigQuery 왼쪽만 10  
Hortonworks Hadoop Hive 왼쪽만 10  
Cloudera Hadoop 왼쪽만 10 Impala는 버전 2.3.0부터 지원됩니다.
Microsoft SQL Server 둘 다 10 2008 이상

STARTSWITH

STARTSWITH(string, substring)

stringsubstring으로 시작하면 true를 반환합니다. 선행 공백은 무시됩니다.

예:

STARTSWITH(“Joker”, “Jo”) = true

TRIM

TRIM(string)

선행 공백과 후행 공백이 모두 제거된 문자열을 반환합니다.

예:

TRIM(" Calculation ") = "Calculation"

UPPER

UPPER(string)

모두 소문자로 구성된 string을 반환합니다.

예:

UPPER("Calculation") = "CALCULATION"


문자열 계산 만들기

아래의 단계를 수행하여 문자열 계산을 만드는 방법을 배워 보십시오.

  1. Tableau Desktop에서 Tableau와 함께 제공된 Sample - Superstore 저장된 데이터 원본에 연결합니다.

  2. 워크시트로 이동합니다.

  3. 데이터 패널의 차원에서 Order ID선반에 끌어 놓습니다.

    모든 Order ID에는 국가(예: CA 및 US), 연도(2011) 및 주문 번호(100006)에 대한 값이 포함됩니다. 이 예제에서는 필드에서 주문 번호만 가져오는 계산을 만듭니다.

  4. 분석 > 계산된 필드 만들기를 선택합니다.

  5. 계산 에디터가 열리면 다음을 수행합니다.

    • 계산된 필드의 이름을 Order ID Numbers로 지정합니다.

    • 다음 수식을 입력합니다.

      RIGHT([Order ID], 6)

      이 수식은 문자열의 오른쪽부터 지정된 자릿수(6)를 가져와서 새 필드에 저장합니다.

      즉, RIGHT('CA-2011-100006' , 6) = '100006'입니다.

    • 작업을 마쳤으면 확인을 클릭합니다.

      새 계산된 필드가 데이터 패널의 차원 아래에 나타납니다. 다른 필드와 마찬가지로, 하나 이상의 비주얼리제이션에서 이 필드를 사용할 수 있습니다.

  6. 데이터 패널에서 Order ID Numbers선반에 끌어 놓습니다. 필드를 Order ID 오른쪽에 배치합니다.

    이제 필드가 어떻게 달라지는지 확인합니다.

참고 항목

Tableau의 함수

Tableau 함수(사전순)

Tableau 함수(범주별)

Tableau에서 계산 서식 지정

의견을 주셔서 감사합니다! 피드백을 제출하는 동안 오류가 발생했습니다.