SnowConvert: SQL -서버에 대한 함수 참조

ISNUMERIC_UDF

정의

이 사용자 정의 함수(UDF)는 식이 유효한 숫자 유형인지 여부를 결정합니다.

ISNUMERIC_UDF(EXPR VARCHAR)
Copy

매개 변수

EXPR VARCHAR

평가할 식입니다.

반환

입력 식이 유효한 숫자 데이터 타입으로 평가되면 1을 반환하고, 그렇지 않으면 0을 반환합니다.

사용법 예

입력:

SELECT ISNUMERIC_UDF('5');
Copy

출력:

1
Copy

PATINDEX_UDF

정의

이 사용자 정의 함수(UDF)는 지정된 식에서 패턴이 처음 발생한 시작 위치를 반환하거나 패턴을 찾을 수 없는 경우 0을 반환합니다.

PATINDEX_UDF(PATTERN VARCHAR, EXPRESSION VARCHAR)
Copy

매개 변수

PATTERN VARCHAR

검색할 패턴입니다.

EXPRESSION VARCHAR

평가 중인 식입니다.

반환

패턴의 시작 위치가 포함된 정수를 반환합니다.

사용법 예

입력:

SELECT PATINDEX_UDF('an', 'banana');
Copy

출력:

2
Copy

ERROR_SEVERITY_UDF

정의

이 사용자 정의 함수(UDF)는 오류의 심각도를 나타내는 값을 가져옵니다. 기본값은 항상 16입니다.

ERROR_SEVERITY_UDF()
Copy

매개 변수

입력 매개 변수가 없습니다.

반환

SQL 변수 이름 ERROR_SEVERITY 와 연관된 값과 함께 문자열 을 반환합니다.

사용법 예

입력:

SELECT ERROR_SEVERITY_UDF();
Copy

출력:

null -- No information set.
Copy

TRANSFORM_SP_EXECUTE_SQL_STRING_UDF(STRING, STRING, ARRAY, ARRAY)

정의

이 사용자 정의 함수(UDF)는 SP_EXECUTESQL 시스템 프로시저에 포함된 매개 변수(데이터 바인딩)의 동작을 SQL 문자열의 값을 직접 대체하여 에뮬레이션합니다.

또한 SP_EXECUTESQL 은 변환될 EXECUTE IMMEDIATE 외부에서 수행되므로 문자열에서 OUTPUT 매개 변수를 제거합니다.

자세한 내용은 SP_EXECUTESQL 변환 사양을 참조하십시오.

TRANSFORM_SP_EXECUTE_SQL_STRING_UDF(
    _SQL_STRING STRING,
    _PARAMS_DEFINITION STRING,
    _PARAMS_NAMES ARRAY,
    _PARAMS_VALUES ARRAY
)
Copy

매개 변수

_SQL_STRING STRING

변환할 문자열입니다.

_PARAMS_DEFINITION STRING

원래 매개 변수 정의는 매개 변수 값을 할당해야 하는 순서를 확인합니다.

_PARAMS_NAMES ARRAY

SQL 문자열의 값을 대체할 매개 변수 이름의 배열입니다.

_PARAMS_VALUES ARRAY

SQL 문자열에서 대체할 매개 변수 값의 배열입니다.

반환

임베드된 매개 변수 값을 바꾼 STRING 을 반환합니다.

사용법 예

입력:

SELECT TRANSFORM_SP_EXECUTE_SQL_STRING_UDF(
    'SELECT * FROM PERSONS WHERE NAME LIKE (@NAME) AND ID < @id AND AGE < @age;', '@age INT, @id INT, @name VARCHAR(25)',
    ARRAY_CONSTRUCT('', '', ''),
    ARRAY_CONSTRUCT(30, 100, 'John Smith'));
Copy

출력:

SELECT * FROM PERSONS WHERE NAME LIKE ('John Smith') AND ID < 100 AND AGE < 30;
Copy

TABLE_OBJECT_ID_UDF (VARCHAR)

정의

이 사용자 정의 함수(UDF)는 특정 이름의 테이블이 이전에 생성된 적이 있는지 확인합니다.

TABLE_OBJECT_ID_UDF(NAME VARCHAR)
Copy

매개 변수

NAME VARCHAR

평가할 테이블 이름입니다.

반환

테이블의 존재 여부에 따라 부울 식을 반환합니다.

사용법 예

입력:

SELECT TABLE_OBJECT_ID_UDF('Test');
Copy

출력:

FALSE
Copy

ERROR_PROCEDURE_UDF

정의

이 사용자 정의 함수(UDF)는 SQL 변수 이름 ERROR_PROCEDURE 과 연관된 값을 반환합니다.

ERROR_PROCEDURE_UDF()
Copy

매개 변수

입력 매개 변수가 없습니다.

반환

SQL 변수 이름 ERROR_PROCEDURE 와 연관된 값과 함께 문자열 을 반환합니다.

사용법 예

입력:

SELECT ERROR_PROCEDURE_UDF();
Copy

출력:

null -- No information set.
Copy

DB_ID_UDF(STRING)

정의

이 사용자 정의 함수(UDF)는 DB_ID 기능을 에뮬레이션합니다.

DB_ID_UDF(p_database_name STRING)
Copy

매개 변수

p_database_name STRING

아이디를 가져올 데이터베이스의 이름입니다.

반환

데이터베이스가 생성될 때 할당된 번호에 해당하는 ID를 반환합니다. 이 번호는 연속적으로 할당됩니다.

사용법 예

입력:

SELECT DB_ID_UDF('MY_DATABASE')
Copy

출력:

6
Copy

경고

데이터베이스가 존재하지 않으면 null을 반환합니다.

ERROR_LINE_UDF

정의

이 사용자 정의 함수(UDF)는 SQL 변수 이름 ERROR_LINE 과 연관된 값을 반환합니다.

ERROR_LINE_UDF()
Copy

매개 변수

입력 매개 변수가 없습니다.

반환

SQL 변수 이름 ERROR_LINE 과 연관된 값과 함께 문자열 을 반환합니다.

사용법 예

입력:

SELECT ERROR_LINE_UDF();
Copy

출력:

null -- No information set.
Copy

FUNCTION_OBJECT_ID_UDF (VARCHAR)

정의

이 사용자 정의 함수(UDF)는 특정 이름의 함수가 이전에 생성된 적이 있는지 확인합니다.

VIEW_OBJECT_ID_UDF(NAME VARCHAR)
Copy

매개 변수

NAME VARCHAR

평가할 함수 이름입니다.

반환

함수의 존재 여부에 따라 부울 식을 반환합니다.

사용법 예

입력:

SELECT FUNCTION_OBJECT_ID_UDF('Test');
Copy

출력:

FALSE
Copy

CONSTRAINT_OBJECT_ID_UDF (VARCHAR)

정의

이 사용자 정의 함수(UDF)는 특정 이름의 제약 조건이 이전에 생성된 적이 있는지 확인합니다.

CONSTRAINT_OBJECT_ID_UDF(NAME VARCHAR)
Copy

매개 변수

NAME VARCHAR

평가할 제약 조건 이름입니다.

반환

제약 조건의 존재 여부에 따라 부울 식을 반환합니다.

사용법 예

입력:

SELECT CONSTRAINT_OBJECT_ID_UDF('Test');
Copy

출력:

FALSE
Copy

FOR_XML_UDF (OBJECT, VARCHAR, VARCHAR)

정의

이 사용자 정의 함수(UDF)는 오브젝트를 XML 로 변환합니다.

FOR_XML_UDF(OBJ OBJECT, ELEMENT_NAME VARCHAR, ROOT_NAME VARCHAR)
Copy

매개 변수

OBJ OBJECT

변환할 오브젝트입니다.

ELEMENT_NAME VARCHAR

오브젝트에 부여할 요소 이름입니다.

ROOT_NAME VARCHAR

XML 의 루트 이름입니다.

반환

XML 형식의 varchar을 반환합니다.

사용법 예

입력:

SELECT
FOR_XML_UDF(OBJECT_CONSTRUCT('id', 1, 'name', 'David'), 'employee', 'employees');
Copy

출력:

<employees>
    <employee type="OBJECT">
        <id type="INTEGER">1</id>
        <name type="VARCHAR">David</name>
    </employee>
<employees>
Copy

OBJECT_ID_UDF (VARCHAR)

정의

이 사용자 정의 함수(UDF)는 특정 이름의 오브젝트가 이전에 생성된 적이 있는지 확인합니다.

OBJECT_ID_UDF(NAME VARCHAR)
Copy

매개 변수

NAME VARCHAR

평가할 오브젝트 이름입니다.

반환

오브젝트의 존재 여부에 따라 부울 식을 반환합니다.

사용법 예

입력:

SELECT OBJECT_ID_UDF('Test');
Copy

출력:

FALSE
Copy

PROCEDURE_OBJECT_ID_UDF (VARCHAR)

정의

이 사용자 정의 함수(UDF)는 특정 이름의 프로시저가 이전에 생성된 적이 있는지 확인합니다.

PROCEDURE_OBJECT_ID_UDF(NAME VARCHAR)
Copy

매개 변수

NAME VARCHAR

평가할 프로시저 이름입니다.

반환

프로시저의 존재 여부에 따라 부울 식을 반환합니다.

사용법 예

입력:

SELECT PROCEDURE_OBJECT_ID_UDF('Test');
Copy

출력:

FALSE
Copy

ISDATE_UDF

정의

이 사용자 정의 함수(UDF)는 입력값이 유효한 날짜인지 여부를 확인합니다.

ISDATE_UDF(DATE_VALUE STRING)
Copy

매개 변수

DATE_VALUE STRING

평가할 날짜입니다.

반환

입력 식이 유효한 날짜 데이터 타입으로 평가되면 1을 반환하고, 그렇지 않으면 0을 반환합니다.

사용법 예

입력:

SELECT ISDATE_UDF('2024-01-26');
Copy

출력:

1
Copy

ERROR_NUMBER_UDF

정의

이 사용자 정의 함수(UDF)는 SQL 변수 이름 ERROR_NUMBER 와 연관된 값을 반환합니다.

ERROR_NUMBER_UDF()
Copy

매개 변수

입력 매개 변수가 없습니다.

반환

SQL 변수 이름 ERROR_NUMBER 와 연관된 값과 함께 문자열 을 반환합니다.

사용법 예

입력:

SELECT ERROR_NUMBER_UDF();
Copy

출력:

null -- No information set.
Copy

OFFSET_FORMATTER (VARCHAR)

정의

이 사용자 정의 함수(UDF)는 보조 함수 를 사용하여 오프셋 시간과 그 접두사 연산자의 형식을 지정합니다.

OFFSET_FORMATTER(offset_hrs VARCHAR)
Copy

매개 변수

offset_hrs VARCHAR

형식화할 값입니다.

반환

오프셋에 대한 형식이 지정된 출력과 함께 varchar 값을 반환합니다.

사용법 예

입력:

 SELECT OFFSET_FORMATTER('2024-01-26 22:00:50.708 -0800');
Copy

출력:

2024-01-26 22:00:50.708 -0800
Copy

OPENXML_UDF

정의

이 사용자 정의 함수(UDF)는 XML 읽기에서 쿼리를 생성합니다.

OPENXML_UDF(XML VARCHAR, PATH VARCHAR)
Copy

매개 변수

XML VARCHAR

XML 내용을 varchar 로.

PATH VARCHAR

추출할 노드의 경로입니다.

반환

XML 읽기에 의해 생성된 데이터가 포함된 테이블을 반환합니다.

사용법 예

입력:

SELECT * FROM TABLE(OPENXML_UDF('<iceCreamOrders>
    <order>
        <customer customerID="CUST001" contactName="Test ABC">
            <iceCreamOrder orderID="ORD001" employeeID="101" orderDate="2023-05-15T14:30:00">
                <iceCreamDetail productID="001" quantity="2"/>
                <iceCreamDetail productID="003" quantity="1"/>
            </iceCreamOrder>
        </customer>
    </order>
    <order>
        <customer customerID="CUST002" contactName="Test XYZ">
            <iceCreamOrder orderID="ORD002" employeeID="102" orderDate="2023-06-20T12:45:00">
                <iceCreamDetail productID="005" quantity="3"/>
                <iceCreamDetail productID="007" quantity="2"/>
            </iceCreamOrder>
        </customer>
    </order>
</iceCreamOrders>
', 'iceCreamOrders:order'));
Copy

출력:

Value
1{ "order": { "$name": "order", "customer": [ { "customer": { "$name": "customer", "@contactName": "Test ABC", "@customerID": "CUST001", "iceCreamOrder": [ { "iceCreamOrder": { "$name": "iceCreamOrder", "@employeeID": 101, "@orderDate": "2023-05-15T14:30:00", "@orderID": "ORD001", "iceCreamDetail": [ { "iceCreamDetail": { "$name": "iceCreamDetail", "@productID": "001", "@quantity": 2 } }, { "iceCreamDetail": { "$name": "iceCreamDetail", "@productID": "003", "@quantity": 1 } } ] } } ] } } ] } }
2{ "order": { "$name": "order", "customer": [ { "customer": { "$name": "customer", "@contactName": "Test XYZ", "@customerID": "CUST002", "iceCreamOrder": [ { "iceCreamOrder": { "$name": "iceCreamOrder", "@employeeID": 102, "@orderDate": "2023-06-20T12:45:00", "@orderID": "ORD002", "iceCreamDetail": [ { "iceCreamDetail": { "$name": "iceCreamDetail", "@productID": "005", "@quantity": 3 } }, { "iceCreamDetail": { "$name": "iceCreamDetail", "@productID": "007", "@quantity": 2 } } ] } } ] } } ] } }

QUOTENAME_UDF (VARCHAR, VARCHAR)

정의

이 사용자 정의 함수(UDF)는 구분 기호가 추가된 Unicode 문자열을 반환하여 유효한 SQL 서버 구분 식별자를 생성합니다.

QUOTENAME_UDF(STR VARCHAR, QUOTECHAR VARCHAR)
Copy

매개 변수

STR VARCHAR

변환할 문자열입니다.

QUOTECHAR VARCHAR

첫 번째 매개 변수에 추가할 구분 기호입니다.

반환

두 번째 매개 변수 식별자를 구분 기호로 추가한 varchar을 반환합니다.

사용법 예

입력:

SELECT QUOTENAME_UDF('test', '?');
Copy

출력:

?test?
Copy

UPDATE_ERROR_VARS_UDF (STRING, STRING, STRING)

정의

이 사용자 정의 함수(UDF)는 프로시저가 오류를 throw할 때를 알 수 있도록 환경의 오류 변수를 업데이트합니다.

UPDATE_ERROR_VARS_UDF(MESSAGE STRING, SEVERITY STRING, STATE STRING)
Copy

매개 변수

STATE STRING

오류 메시지의 상태입니다.

MESSAGE STRING

오류에 표시할 메시지입니다.

SEVERITY STRING

오류의 심각도입니다.

반환

새 오류 메시지 정보와 함께 문자열 값을 반환합니다.

사용법 예

입력:

  SELECT UPDATE_ERROR_VARS_UDF('Message', '1', '1');
Copy

출력:

1ABC1
Copy

ROUND_MILLISECONDS_UDF (TIMESTAMP_TZ)

정의

이 사용자 정의 함수(UDF)는 밀리초를 0, 3 또는 7밀리초 단위로 반올림하는 함수입니다. 트랜잭션은 날짜/시간 값의 밀리초를 자동으로 반올림합니다.

ROUND_MILLISECONDS_UDF(INPUT TIMESTAMP_TZ)
Copy

매개 변수

INPUT TIMESTAMP_TZ

반올림할 입력 시간입니다.

반환

입력한 TIMESTAMP_TZ 값과 동일한 값을 반환하지만 밀리초를 반올림하여 반환합니다.

사용법 예

입력:

SELECT PUBLIC.ROUND_MILLISECONDS_UDF('1900-01-01 00:00:00.995 +0100')
Copy

출력:

'1900-01-01 00:00:00.997 +0100'
Copy

CAST_NUMERIC_TO_TIMESTAMP_TZ_UDF (NUMBER)

정의

이 사용자 정의 함수(UDF)는 숫자 값을 timestamp_tz 로 형 변환하는 데 사용됩니다.

CAST_NUMERIC_TO_TIMESTAMP_TZ_UDF(INPUT NUMBER)
Copy

매개 변수

INPUT NUMBER

형 변환할 번호입니다.

반환

현재 타임존와 함께 timestamp_tz 를 반환합니다.

사용법 예

입력:

SELECT PUBLIC.CAST_NUMERIC_TO_TIMESTAMP_TZ_UDF(0)
Copy

출력:

1900-01-01 01:00:00.000 +0100
Copy

IDENTITY_UDF

정의

이 사용자 정의 함수(UDF)는 식이 유효한 숫자 유형인지 여부를 결정합니다.

IDENTITY_UDF()
Copy

매개 변수

입력 매개 변수가 없습니다.

반환

정수 식을 반환합니다.

사용법 예

경고

논리를 지원하기 위해 시퀀스가 생성됩니다.

입력:

IDENTITY_UDF()
Copy

출력:

1
Copy

FOR_XML_UDF (OBJECT, VARCHAR)

정의

이 사용자 정의 함수(UDF)는 오브젝트를 XML 로 변환합니다.

FOR_XML_UDF(OBJ OBJECT, ELEMENT_NAME VARCHAR)
Copy

매개 변수

OBJ OBJECT

변환할 오브젝트입니다.

ELEMENT_NAME VARCHAR

오브젝트에 부여할 요소 이름입니다.

반환

XML 형식의 varchar을 반환합니다.

사용법 예

입력:

SELECT
FOR_XML_UDF(OBJECT_CONSTRUCT('id', 1, 'name', 'David'), 'employee');
Copy

출력:

<employee type="OBJECT">
    <id type="INTEGER">1</id>
    <name type="VARCHAR">David</name>
</employee>
Copy

QUOTENAME_UDF (VARCHAR)

정의

이 사용자 정의 함수(UDF)는 구분 기호가 추가된 Unicode 문자열을 반환하여 유효한 SQL 서버 구분 식별자를 생성합니다.

QUOTENAME_UDF(STR VARCHAR)
Copy

매개 변수

STR VARCHAR

변환할 문자열입니다.

반환

구분 기호가 추가된 varchar을 반환합니다.

사용법 예

입력:

SELECT QUOTENAME_UDF('test');
Copy

출력:

"test"
Copy

VIEW_OBJECT_ID_UDF (VARCHAR)

정의

이 사용자 정의 함수(UDF)는 특정 이름의 뷰가 이전에 생성된 적이 있는지 확인합니다.

VIEW_OBJECT_ID_UDF(NAME VARCHAR)
Copy

매개 변수

NAME VARCHAR

평가할 뷰 이름입니다.

반환

뷰의 존재 여부에 따라 부울 식을 반환합니다.

사용법 예

입력:

SELECT VIEW_OBJECT_ID_UDF('Test');
Copy

출력:

FALSE
Copy

SUBTRACT_TIMESTAMP_TZ_UDF (TIMESTAMP_TZ, TIMESTAMP_TZ)

정의

이 사용자 정의 함수(UDF)는 두 입력값을 시스템 세션 시간대로 변환하고 1900-01-01 00:00:00.000을 0값으로 하여 날짜(FIRST_DATE - SECOND_DATE)를 뺍니다. 값에 타임존가 포함되지 않은 경우 현재 세션 타임존가 사용됩니다.

PUBLIC.SUBTRACT_TIMESTAMP_TZ_UDF(FIRST_DATE TIMESTAMP_TZ, SECOND_DATE TIMESTAMP_TZ)
Copy

매개 변수

FIRST_DATE TIMESTAMP_TZ

첫 번째 날짜에서 뺄 날짜입니다.

SECOND_DATE TIMESTAMP_TZ

두 번째 날짜에서 뺄 날짜입니다.

반환

두 입력 날짜의 차이를 반환합니다.

사용법 예

입력:

SELECT SUBTRACT_TIMESTAMP_TZ_UDF('1900-01-01 00:00:00.000 +0100', '1900-01-01 00:00:00.003 -0100')
Copy

출력:

1899-12-31 13:59:59.997 -0800
Copy

STR_UDF (FLOAT, VARCHAR)

정의

이 사용자 정의 함수 (UDF)는 SQL Server STR()의 기능을 하나 또는 2개의 선택적 매개 변수와 함께 사용할 때 Snowflake로 변환하기 위한 템플릿입니다

STR_UDF(FLOAT_EXPR FLOAT, FORMAT VARCHAR)
Copy

매개 변수

FLOAT_EXPR FLOAT

처리할 식입니다.

FORMAT VARCHAR

적용할 형식입니다.

반환

형식이 지정된 식을 varchar로 반환합니다.

사용법 예

입력:

SELECT STR_UDF(1.5, '99');
Copy

출력:

2
Copy

XML_JSON_SIMPLE

정의

이 사용자 정의 함수(UDF)는 XML 값에서 읽기를 실행하여 얻은 정보로 오브젝트를 생성합니다.

XML_JSON_SIMPLE(XML VARIANT)
Copy

매개 변수

XML VARIANT

읽을 XML 입니다.

반환

XML 에서 처리된 정보가 포함된 오브젝트를 반환합니다.

사용법 예

입력:

SELECT XML_JSON_SIMPLE(TO_VARIANT(PARSE_XML('<iceCreamOrders>
    <order>
        <customer customerID="CUST001" contactName="Test ABC">
            <iceCreamOrder orderID="ORD001" employeeID="101" orderDate="2023-05-15T14:30:00">
                <iceCreamDetail productID="001" quantity="2"/>
                <iceCreamDetail productID="003" quantity="1"/>
            </iceCreamOrder>
        </customer>
    </order>
    <order>
        <customer customerID="CUST002" contactName="Test XYZ">
            <iceCreamOrder orderID="ORD002" employeeID="102" orderDate="2023-06-20T12:45:00">
                <iceCreamDetail productID="005" quantity="3"/>
                <iceCreamDetail productID="007" quantity="2"/>
            </iceCreamOrder>
        </customer>
    </order>
</iceCreamOrders>
')));
Copy

출력:

{
  "iceCreamOrders": {
    "$name": "iceCreamOrders",
    "order": [
      {
        "order": {
          "$name": "order",
          "customer": [
            {
              "customer": {
                "$name": "customer",
                "@contactName": "Test ABC",
                "@customerID": "CUST001",
                "iceCreamOrder": [
                  {
                    "iceCreamOrder": {
                      "$name": "iceCreamOrder",
                      "@employeeID": 101,
                      "@orderDate": "2023-05-15T14:30:00",
                      "@orderID": "ORD001",
                      "iceCreamDetail": [
                        {
                          "iceCreamDetail": {
                            "$name": "iceCreamDetail",
                            "@productID": "001",
                            "@quantity": 2
                          }
                        },
                        {
                          "iceCreamDetail": {
                            "$name": "iceCreamDetail",
                            "@productID": "003",
                            "@quantity": 1
                          }
                        }
                      ]
                    }
                  }
                ]
              }
            }
          ]
        }
      },
      {
        "order": {
          "$name": "order",
          "customer": [
            {
              "customer": {
                "$name": "customer",
                "@contactName": "Test XYZ",
                "@customerID": "CUST002",
                "iceCreamOrder": [
                  {
                    "iceCreamOrder": {
                      "$name": "iceCreamOrder",
                      "@employeeID": 102,
                      "@orderDate": "2023-06-20T12:45:00",
                      "@orderID": "ORD002",
                      "iceCreamDetail": [
                        {
                          "iceCreamDetail": {
                            "$name": "iceCreamDetail",
                            "@productID": "005",
                            "@quantity": 3
                          }
                        },
                        {
                          "iceCreamDetail": {
                            "$name": "iceCreamDetail",
                            "@productID": "007",
                            "@quantity": 2
                          }
                        }
                      ]
                    }
                  }
                ]
              }
            }
          ]
        }
      }
    ]
  }
}
Copy

FORMATMESSAGE_UDF

정의

이 사용자 정의 함수(UDF)는 SQL Server FORMATMESSAGE 함수의 기능을 제공합니다. 제공된 문자열의 기존 메시지에서 메시지를 구성합니다.

FORMATMESSAGE_UDF(MESSAGE STRING, ARGS ARRAY)
Copy

매개 변수

MESSAGE STRING

기존 메시지 문자열입니다.

ARGS ARRAY

첫 번째 메시지 문자열에 추가할 인자입니다.

반환

인자의 위치와 관련된 해당 연결 메시지가 포함된 문자열을 반환합니다.

사용법 예

입력:

SELECT FORMATMESSAGE_UDF('Test %s!', TO_ARRAY('a'));
Copy

출력:

Test a!
Copy

IS_MEMBER_UDF

정의

이 사용자 정의 함수(UDF)는 액세스 토큰을 검사하여 윈도우 그룹 멤버 자격을 결정합니다.

IS_MEMBER_UDF(ROLE STRING)
Copy

매개 변수

ROLE STRING

확인할 역할 이름입니다.

반환

현재 사용자가 역할의 멤버인 경우 true이면 부울 식을 반환하고, 그렇지 않으면 false을 반환합니다.

사용법 예

입력:

SELECT IS_MEMBER_UDF('TEST');
Copy

출력:

FALSE
Copy

RAISERROR_UDF (DOUBLE, DOUBLE, DOUBLE, ARRAY)

정의

이 사용자 정의 함수(UDF)는 특정 메시지와 함께 예외를 throw합니다.

RAISERROR_UDF(MSG_ID DOUBLE, SEVERITY DOUBLE, STATE DOUBLE, PARAMS ARRAY)
Copy

매개 변수

MSG_ID DOUBLE

오류 메시지의 메시지 ID 입니다.

SEVERITY DOUBLE

오류의 심각도 번호입니다.

STATE DOUBLE

오류 메시지의 상태 번호입니다.

PARAMS ARRAY

오류 메시지의 추가 정보입니다.

반환

오류 메시지와 함께 varchar을 반환합니다.

사용법 예

입력:

SELECT RAISERROR_UDF(2.1, 1.6, 1.0, array_construct('More information'));
Copy

출력:

MESSAGE: 2.1, LEVEL: 1.6, STATE: 1
Copy

STR_UDF(FLOAT)

정의

이 사용자 정의 함수 (UDF)는 SQL Server STR()의 기능을 하나 또는 2개의 선택적 매개 변수와 함께 사용할 때 Snowflake로 변환하기 위한 템플릿입니다

STR_UDF(FLOAT_EXPR FLOAT, FORMAT VARCHAR)
Copy

매개 변수

FLOAT_EXPR FLOAT

처리할 식입니다.

반환

형식이 지정된 식을 varchar로 반환합니다.

사용법 예

입력:

SELECT STR_UDF(1.5);
Copy

출력:

2
Copy

SWITCHOFFSET_UDF (TIMESTAMP_TZ, VARCHAR)

정의

이 사용자 정의 함수(UDF)는 매개 변수 target_tz에 대해 조정된 시간이 포함된 새 timestamp_tz를 반환합니다.

SWITCHOFFSET_UDF(source_timestamp TIMESTAMP_TZ, target_tz varchar)
Copy

매개 변수

source_timestamp TIMESTAMP_TZ

조정할 소스 타임스탬프입니다.

target_tz varchar

가져올 대상 시간입니다.

반환

형식이 지정된 대상 시간을 TIMESTAMP_TZ 로 반환합니다.

사용법 예

입력:

SELECT SWITCHOFFSET_UDF(time_in_paris, '-0600') as time_in_costa_rica;
Copy

출력:

time_in_paris

time_in_costa_rica

2022-10-05 22:00:24.467 +02:00

2022-10-05 14:00:24.467 -06:00

GET_CURRENT_TIMEZONE_UDF

정의

이 사용자 정의 함수(UDF)는 현재 세션 또는 시스템 시간대를 리터럴로 가져옵니다.

GET_CURRENT_TIMEZONE_UDF()
Copy

매개 변수

매개 변수가 없습니다.

반환

현재 세션 또는 시스템 시간대가 리터럴로 표시된 리터럴 값을 반환합니다.

사용법 예

입력:

SELECT PUBLIC.GET_CURRENT_TIMEZONE_UDF();
Copy

출력:

'Europe/London'
Copy

UPDATE_ERROR_VARS_UDF (STRING, STRING, STRING, STRING, STRING, STRING)

정의

이 사용자 정의 함수(UDF)는 프로시저가 오류를 throw할 때를 알 수 있도록 환경의 오류 변수를 업데이트합니다.

UPDATE_ERROR_VARS_UDF(LINE STRING,CODE STRING, STATE STRING, MESSAGE STRING, PROC_NAME STRING, SEVERITY STRING)
Copy

매개 변수

LINE STRING

오류와 관련된 라인입니다.

CODE STRING

오류 메시지와 관련된 오류 코드입니다.

STATE STRING

오류 메시지의 상태입니다.

MESSAGE STRING

오류에 표시할 메시지입니다.

PROC_NAME STRING

프로시저 이름입니다.

SEVERITY STRING

오류의 심각도입니다.

반환

새 오류 메시지 정보와 함께 문자열 값을 반환합니다.

사용법 예

입력:

  SELECT UPDATE_ERROR_VARS_UDF('1', '1', '1', 'ABC', 'TEST', '1');
Copy

출력:

111ABCTEST1
Copy

SEQUENCE_OBJECT_ID_UDF (VARCHAR)

정의

이 사용자 정의 함수(UDF)는 특정 이름의 시퀀스가 이전에 생성된 적이 있는지 확인합니다.

SEQUENCE_OBJECT_ID_UDF(NAME VARCHAR)
Copy

매개 변수

NAME VARCHAR

평가할 시퀀스 이름입니다.

반환

시퀀스의 존재 여부에 따라 부울 식을 반환합니다.

사용법 예

입력:

SELECT SEQUENCE_OBJECT_ID_UDF('Test');
Copy

출력:

FALSE
Copy

CAST_TIMESTAMP_TZ_TO_NUMERIC_UDF (TIMESTAMP_TZ)

정의

이 사용자 정의 함수(UDF)는 timestamp_tz 를 숫자로 형 변환하는 데 사용됩니다. 숫자 값으로는 타임스탬프 정보를 저장할 수 없으므로 현재 시간대를 UTC 로 변환합니다.

CAST_TIMESTAMP_TZ_TO_NUMERIC_UDF(INPUT TIMESTAMP_TZ)
Copy

매개 변수

INPUT TIMESTAMP_TZ

전송할 타임스탬프 입력입니다.

반환

소수점이 있는 숫자를 반환합니다. 정수 부분은 1900-01-01부터 일 수를 나타내고 소수 부분은 24시간 중 밀리초의 백분율입니다.

사용법 예

입력:

SELECT PUBLIC.CAST_TIMESTAMP_TZ_TO_NUMERIC_UDF('1900-01-01 01:00:00.000 +0100')
Copy

출력:

0
Copy

RAISERROR_UDF (VARCHAR, DOUBLE, DOUBLE, ARRAY)

정의

이 사용자 정의 함수(UDF)는 특정 메시지와 함께 예외를 throw합니다.

RAISERROR_UDF(MSG_TEXT VARCHAR, SEVERITY DOUBLE, STATE DOUBLE, PARAMS ARRAY)
Copy

매개 변수

MSG_TEXT VARCHAR

오류 메시지의 메시지 텍스트입니다.

SEVERITY DOUBLE

오류의 심각도 번호입니다.

STATE DOUBLE

오류 메시지의 상태 번호입니다.

PARAMS ARRAY

오류 메시지의 추가 정보입니다.

반환

오류 메시지와 함께 varchar을 반환합니다.

사용법 예

입력:

SELECT RAISERROR_UDF('<\<%*.*s>> TEST', 1.0, 1, array_construct());
Copy

출력:

MESSAGE: <<undefined>> TEST, LEVEL: 1, STATE: 1
Copy

PARSENAME_UDF

정의

이 사용자 정의 함수(UDF)는 '.' 로 구분된 문자열 의 PART_NUMBER 인덱스를 가져옵니다.

PARSENAME_UDF(STR VARCHAR, PART_NUMBER INT)
Copy

매개 변수

STR VARCHAR

오브젝트 이름은 문자열 입니다.

PART_NUMBER INT

오브젝트 이름에서 확인할 부분입니다.

반환

오브젝트 이름에서 지정된 부분을 반환합니다.

사용법 예

입력:

SELECT PARSENAME_UDF('Test_A.Test_B.Test_C]', 2);
Copy

출력:

Test_B
Copy

ERROR_STATE_UDF

정의

이 사용자 정의 함수(UDF)는 실행 횟수나 CATCH 블록의 범위 내에서 실행되는 위치에 관계없이 오류 상태를 가져옵니다.

ERROR_STATE_UDF()
Copy

매개 변수

입력 매개 변수가 없습니다.

반환

실행 횟수 또는 CATCH 블록의 범위 내에서 실행되는 위치에 관계없이 오류 상태와 함께 문자열 을 반환합니다.

사용법 예

입력:

SELECT ERROR_STATE_UDF();
Copy

출력:

null -- No information set.
Copy

CAST_TIME_TO_TIMESTAMP_TZ_UDF (TIME)

정의

이 사용자 정의 함수(UDF)는 timetimestamp_tz 로 형 변환합니다.

CAST_TIME_TO_TIMESTAMP_TZ_UDF(INPUT TIME)
Copy

매개 변수

INPUT TIME

timestamp_tz 로 전송할 입력 시간입니다.

반환

날짜가 1900-01-01이고 입력한 시간과 동일한 시간인 timestamp_tz 를 반환합니다.

사용법 예

입력:

SELECT PUBLIC.CAST_TIME_TO_TIMESTAMP_TZ_UDF('00:00:00.995')
Copy

출력:

1900-01-01 00:00:00.997
Copy

SUM_TIMESTAMP_TZ_UDF (TIMESTAMP_TZ, TIMESTAMP_TZ)

정의

이 사용자 정의 함수(UDF)는 두 입력값을 시스템 또는 세션 시간대로 변환하고 1900-01-01 00:00:00.000을 영값으로 하여 날짜를 더합니다. 값에 타임존가 포함되지 않은 경우 현재 세션 타임존가 사용됩니다.

SUM_TIMESTAMP_TZ_UDF(FIRST_DATE TIMESTAMP_TZ, SECOND_DATE TIMESTAMP_TZ)
Copy

매개 변수

FIRST_DATE TIMESTAMP_TZ

합산할 첫 번째 날짜입니다.

SECOND_DATE TIMESTAMP_TZ

합산할 두 번째 날짜입니다.

반환

두 입력 날짜 사이의 합계를 반환합니다.

사용법 예

입력:

SELECT SUM_TIMESTAMP_TZ_UDF('1900-01-01 00:00:00.000 +0100', '1900-01-01 00:00:00.003 -0100')
Copy

출력:

1900-01-01 00:00:00.003 +0000
Copy