통과 함수(RAWSQL)
RAWSQL 통과 함수를 사용하면 Tableau에서 해석하지 않고 SQL 식을 데이터베이스로 바로 보낼 수 있습니다. Tableau에서 모르는 사용자 지정 데이터베이스 함수가 있는 경우 이러한 통과 함수를 사용하여 사용자 지정 함수를 호출할 수 있습니다.
일반적으로 데이터베이스는 Tableau에 표시된 필드명을 이해하지 못합니다. 통과 함수에 포함하는 SQL 식을 Tableau에서 해석하지 않기 때문에 Tableau 필드명을 식에 사용하면 오류가 발생할 수도 있습니다. 대체 구문을 사용하여 Tableau 계산에 올바른 필드명 또는 식을 통과 SQL에 삽입할 수 있습니다. 예를 들어 값 집합의 중앙값을 계산하는 함수가 있는 경우 다음과 같이 Tableau 열 [Sales]에서 해당 함수를 호출할 수 있습니다.
RAWSQLAGG_REAL(“MEDIAN(%1)”, [Sales])
Tableau에서 식을 해석하지 않기 때문에 집계를 정의해야 합니다. 집계된 식을 사용하는 경우 아래에 설명된 RAWSQLAGG 함수를 사용할 수 있습니다.
RAWSQL 통과 함수는 게시된 데이터 원본 또는 Tableau 추출에서 작동하지 않습니다.
이러한 함수는 Tableau Desktop 8.2부터 Tableau Desktop의 이전 버전에서와 다른 결과를 반환할 수 있습니다. 이는 Tableau에서 지금 OLE DB 대신 통과 함수에 대해 ODBC를 사용하기 때문입니다. ODBC는 실제 값을 정수로 반환할 때 잘립니다. OLE DB는 실제 값을 정수로 반환할 때 반올림/반내림합니다.
RAWSQL 함수
Tableau에서 다음 RAWSQL 함수를 사용할 수 있습니다.
RAWSQL_BOOL(“sql_식”, [인수1], …[인수N])
주어진 SQL 식의 부울 결과를 반환합니다. SQL 식은 기초 데이터베이스에 바로 전달됩니다. SQL 식의 %n을 데이터베이스 값의 대체 구문으로 사용합니다.
예
이 예에서 %1은 [Sales], %2는 [Profit]에 해당합니다.
RAWSQL_BOOL("%1 > %2", [Sales], [Profit])
RAWSQL_DATE(“sql_식”, [인수1], …[인수N])
주어진 SQL 식의 날짜 결과를 반환합니다. SQL 식은 기초 데이터베이스에 바로 전달됩니다. SQL 식의 %n을 데이터베이스 값의 대체 구문으로 사용합니다.
예
이 예에서 %1은 [Order Date]에 해당합니다.
RAWSQL_DATE(“%1”, [Order
Date])
RAWSQL_DATETIME(“sql_식”, [인수1], …[인수N])
주어진 SQL 식의 날짜 및 시간 결과를 반환합니다. SQL 식은 기초 데이터베이스에 바로 전달됩니다. SQL 식의 %n을 데이터베이스 값의 대체 구문으로 사용합니다. 이 예에서 %1은 [Delivery Date]에 해당합니다.
예
RAWSQL_DATETIME("%1", [Order Date])
RAWSQL_INT(“sql_식”, [인수1], …[인수N])
주어진 SQL 식의 정수 결과를 반환합니다. SQL 식은 기초 데이터베이스에 바로 전달됩니다. SQL 식의 %n을 데이터베이스 값의 대체 구문으로 사용합니다. 이 예에서 %1은 [Sales]에 해당합니다.
예
RAWSQL_INT(“500
+ %1”, [Sales])
RAWSQL_REAL(“sql_식”, [인수1], …[인수N])
기초 데이터베이스에 바로 전달된 주어진 SQL 식의 숫자 결과를 반환합니다. SQL 식의 %n을 데이터베이스 값의 대체 구문으로 사용합니다. 이 예에서 %1은 [Sales]에 해당합니다.
예
RAWSQL_REAL(“-123.98 * %1”, [Sales])
RAWSQL_SPATIAL
기초 데이터 원본에 바로 전달된 주어진 SQL 식의 공간을 반환합니다. SQL 식의 %n을 데이터베이스 값의 대체 구문으로 사용합니다.
예
이 예에서 %1은(는) [Geometry]에 해당합니다.
RAWSQL_SPATIAL("%1", [Geometry])
RAWSQL_STR(“sql_식”, [인수1], …[인수N])
기초 데이터베이스에 바로 전달된 주어진 SQL 식의 문자열을 반환합니다. SQL 식의 %n을 데이터베이스 값의 대체 구문으로 사용합니다. 이 예에서 %1은 [Customer Name]에 해당합니다.
예
RAWSQL_STR(“%1”, [Customer Name])
RAWSQLAGG_BOOL(“sql_식”, [인수1], …[인수N])
주어진 집계 SQL 식의 부울 결과를 반환합니다. SQL 식은 기초 데이터베이스에 바로 전달됩니다. SQL 식의 %n을 데이터베이스 값의 대체 구문으로 사용합니다.
예
이 예에서 %1은 [Sales], %2는 [Profit]에 해당합니다.
RAWSQLAGG_BOOL(“SUM( %1) >SUM( %2)”, [Sales], [Profit])
RAWSQLAGG_DATE(“sql_식”, [인수1], …[인수N])
주어진 집계 SQL 식의 날짜 결과를 반환합니다. SQL 식은 기초 데이터베이스에 바로 전달됩니다. SQL 식의 %n을 데이터베이스 값의 대체 구문으로 사용합니다. 이 예에서 %1은 [Order Date]에 해당합니다.
예
RAWSQLAGG_DATE(“MAX(%1)”,
[Order Date])
RAWSQLAGG_DATETIME(“sql_식”, [인수1], …[인수N])
주어진 집계 SQL 식의 날짜 및 시간 결과를 반환합니다. SQL 식은 기초 데이터베이스에 바로 전달됩니다. SQL 식의 %n을 데이터베이스 값의 대체 구문으로 사용합니다. 이 예에서 %1은 [Delivery Date]에 해당합니다.
예
RAWSQLAGG_DATETIME(“MIN(%1)”, [Delivery Date])
RAWSQLAGG_INT(“sql_expr”, [arg1,] …[argN])
주어진 집계 SQL 식의 정수 결과를 반환합니다. SQL 식은 기초 데이터베이스에 바로 전달됩니다. SQL 식의 %n을 데이터베이스 값의 대체 구문으로 사용합니다. 이 예에서 %1은 [Sales]에 해당합니다.
예
RAWSQLAGG_INT(“500
+ SUM(%1)”, [Sales])
RAWSQLAGG_REAL(“sql_expr”, [arg1,] …[argN])
기초 데이터베이스에 바로 전달된 주어진 집계 SQL 식의 숫자 결과를 반환합니다. SQL 식의 %n을 데이터베이스 값의 대체 구문으로 사용합니다. 이 예에서 %1은 [Sales]에 해당합니다.
예
RAWSQLAGG_REAL(“SUM( %1)”, [Sales])
RAWSQLAGG_STR(“sql_expr”, [arg1,] …[argN])
기초 데이터베이스에 바로 전달된 주어진 집계 SQL 식의 문자열을 반환합니다. SQL 식의 %n을 데이터베이스 값의 대체 구문으로 사용합니다. 이 예에서는 %1은 [Discount]에 해당합니다.
예
RAWSQLAGG_STR(“AVG(%1)”,
[Discount])