SnowConvert AI - SQL Server-Azure Synapse - 기본 제공 함수¶
Applies to
SQL 서버
Azure 시냅스 분석
참고
기본 제공 함수 및 그와 동등한 Snowflake 함수에 대한 자세한 내용은 [일반적인 기본 제공 함수](../general/ built-in-functions.md)도 참조하세요.
집계¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
TransactSQL |
Snowflake |
참고 |
APPROX_COUNT_DISTINCT |
APPROX_COUNT_DISTINCT |
|
AVG |
AVG |
|
CHECKSUM_AGG |
*정의 예정 |
|
COUNT |
COUNT |
|
COUNT_BIG |
*정의 예정 |
|
GROUPING |
GROUPING |
|
GROUPING_ID |
GROUPING_ID |
|
MAX |
MAX |
|
MIN |
MIN |
|
STDEV |
STDDEV, STDEV_SAMP |
|
STDEVP |
STDDEV_POP |
|
SUM |
SUM |
|
VAR |
VAR_SAMP |
|
VARP |
VAR_POP |
분석¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
CUME_DIST |
CUME_DIST |
|
FIRST_VALUE |
FIRST_VALUE |
|
LAG |
LAG |
|
LAST_VALUE |
LAST_VALUE |
|
LEAD |
LEAD |
|
PERCENTILE_CONT |
PERCENTILE_CONT |
|
PERCENTILE_DISC |
PERCENTILE_DISC |
|
PERCENT_RANK |
PERCENT_RANK |
데이터 정렬¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
COLLATIONPROPERTY |
*정의 예정 |
|
TERTIARY_WEIGHTS |
*정의 예정 |
구성¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
@@DBTS |
*정의 예정 |
|
@@LANGID |
*정의 예정 |
|
@@LANGUAGE |
*정의 예정 |
|
@@LOCK_TIMEOUT |
*정의 예정 |
|
@@MAX_CONNECTIONS |
*정의 예정 |
|
@@MAX_PRECISION |
*정의 예정 |
|
@@NESTLEVEL |
*정의 예정 |
|
@@OPTIONS |
*정의 예정 |
|
@@REMSERVER |
*정의 예정 |
|
@@SERVERNAME |
CONCAT(’app.snowflake.com’, CURRENT_ACCOUNT( )) |
|
@@SERVICENAME |
*정의 예정 |
|
@@SPID |
*정의 예정 |
|
@@TEXTSIZE |
*정의 예정 |
|
@@VERSION |
*정의 예정 |
CURRENT_VERSION 을 사용하여 모방 가능 |
변환¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
CAST |
CAST |
Returns NULL if the value isn’t a number, otherwise returns the numeric value as its. |
CONVERT |
CONVERT 확인 |
CAST 와 같은 동작 |
PARSE |
*정의 예정 |
|
TRY_CAST |
TRY_CAST |
Returns NULL if the value isn’t a number, otherwise returns the numeric value as its. |
*정의 예정 |
TRY_CAST 와 동일한 동작 |
|
TRY_PARSE |
TRY_CAST |
정수를 날짜 또는 타임스탬프로 구문 분석할 때 동작이 달라질 수 있습니다. |
암호화¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
ASYMKEY_ID |
*정의 예정 |
|
ASYMKEYPROPERTY |
*정의 예정 |
|
CERTENCODED |
*정의 예정 |
|
CERTPRIVATEKEY |
*정의 예정 |
|
DECRYPTBYASYMKEY |
*정의 예정 |
|
DECRYPTBYCERT |
*정의 예정 |
|
DECRYPTBYKEY |
*정의 예정 |
|
DECRYPTBYKEYAUTOASYMKEY |
*정의 예정 |
|
DECRYPTBYKEYAUTOCERT |
*정의 예정 |
|
DECRYPTBYPASSPHRASE |
_*to be defined_ |
DENCRYPT_RAW 를 사용하여 모방 가능 |
ENCRYPTBYASYMKEY |
*정의 예정 |
|
ENCRYPTBYCERT |
*정의 예정 |
|
ENCRYPTBYKEY |
*정의 예정 |
|
ENCRYPTBYPASSPHRASE |
*정의 예정 |
ENCRYPT_RAW 를 사용하여 모방 가능 |
HASHBYTES |
MD5, SHA1, SHA2 |
<p>현재 분리된 해시만 지원됩니다. 필요한 알고리즘에 따라 적절한 항목을 사용합니다.</p><p><strong>MD5</strong>는 16진수로 인코딩된 32자입니다.</p><p><strong>SHA1</strong>은 160비트가 포함된 16진수로 인코딩된 40자입니다.</p><p><strong>SHA2</strong>는 N비트 SHA-2 메시지 다이제스트를 포함하는 16진수로 인코딩된 문자열입니다. 크기는 다음과 같습니다.</p><p>224 = SHA-224</p><p>256 = SHA-256(기본값)</p><p>384 = SHA-384</p><p>512 = SHA-512</p> |
IS_OBJECTSIGNED |
*정의 예정 |
|
KEY_GUID |
*정의 예정 |
|
KEY_ID |
*정의 예정 |
|
KEY_NAME |
*정의 예정 |
|
SIGNBYASYMKEY |
*정의 예정 |
|
SIGNBYCERT |
*정의 예정 |
|
SYMKEYPROPERTY |
*정의 예정 |
|
VERIFYSIGNEDBYCERT |
*정의 예정 |
커서¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
@@CURSOR_ROWS |
*정의 예정 |
|
@@FETCH_STATUS |
*정의 예정 |
|
CURSOR_STATUS |
*정의 예정 |
데이터 타입¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
DATALENGTH |
OCTET_LENGTH |
Snowflake는 분수 바이트 수를 사용하지 않으므로 길이는 항상 8 * OCTET_LENGTH 로 계산됩니다 |
IDENT_SEED |
*정의 예정 |
|
IDENT_CURRENT |
*정의 예정 |
|
IDENTITY |
*정의 예정 |
|
IDENT_INCR |
*정의 예정 |
|
SQL_VARIANT_PROPERTY |
*정의 예정 |
날짜 및 시간¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
@@DATEFIRST |
*정의 예정 |
|
@@LANGUAGE |
*정의 예정 |
|
CURRENT_TIMESTAMP |
CURRENT_TIMESTAMP |
|
CURRENT_TIMEZONE |
*정의 예정 |
|
DATEADD |
DATEADD |
|
DATEDIFF |
DATEDIFF |
|
DATEDIFF_BIG |
*정의 예정 |
|
DATEFROMPARTS |
DATE_FROM_PARTS |
|
DATENAME |
*정의 예정 |
This function receives two arguments: a datepart and date. It returns a string. Here are the supported dateparts from TSQL to Snowflake year, yyyy, yy -> DATE_PART(YEAR, “$date”) quarter, qq, q -> DATE_PART(QUARTER, “$date”) weekday, dw -> DAYNAME(“$date”), though only providing an three-letter english day name |
DATEPART |
DATE_PART |
|
DATETIME2FROMPARTS |
*정의 예정 |
|
DATETIMEFROMPARTS |
*정의 예정 |
DATE_FROM_PARTS 및 TIME_FROM_PARTS 를 조합하여 모방할 수 있습니다 |
DATETIMEOFFSETFROMPARTS |
*정의 예정 |
|
DAY |
DAY |
|
EOMONTH |
*정의 예정 |
LAST_DAY 를 사용하여 모방 가능 |
GETDATE |
GETDATE |
|
GETUTCDATE |
*정의 예정 |
CONVERT_TIMEZONE 을 사용하여 모방 가능 |
ISDATE |
*정의 예정 |
Can be mimicked by using TRY_TO_DATE Returns NULL if the value isn’t a date, otherwise returns the date value as its. |
MONTH |
MONTH |
|
SMALLDATETIMEFROMPARTS |
*정의 예정 |
DATE_FROM_PARTS 및 TIME_FROM_PARTS 를 조합하여 모방할 수 있습니다 |
SWITCHOFFSET |
*정의 예정 |
CONVERT_TIMEZONE 을 사용하여 모방 가능 |
SYSDATETIME |
LOCALTIME |
|
SYSDATETIMEOFFSET |
*정의 예정 |
CONVERT_TIMEZONE 및 LOCALTIME 을 사용하여 모방할 수 있습니다 |
SYSUTCDATETIME |
*정의 예정 |
CONVERT_TIMEZONE 및 LOCALTIME 을 사용하여 모방할 수 있습니다 |
TIMEFROMPARTS |
TIME_FROM_PARTS |
|
TODATETIMEOFFSET |
*정의 예정 |
CONVERT_TIMEZONE 을 사용하여 모방 가능 |
YEAR |
YEAR |
JSON¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
ISJSON |
CHECK_JSON |
이는 Snowflake의 ‘미리 보기 기능’입니다 |
JSON_VALUE |
*정의 예정 |
<p></p><p>TO_VARCHAR(GET_PATH(PARSE_JSON(JSON), PATH))</p> 를 사용하여 모방 가능 |
JSON_QUERY |
*정의 예정 |
|
JSON_MODIFY |
*정의 예정 |
수학¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
ABS |
ABS |
|
ACOS |
ACOS |
|
ASIN |
ASIN |
|
ATAN |
ATAN |
|
ATN2 |
ATAN2 |
|
CEILING |
CEIL |
|
COS |
COS |
|
COT |
COT |
|
DEGREES |
DEGREES |
|
EXP |
EXP |
|
FLOOR |
FLOOR |
|
LOG |
LN |
|
LOG10 |
LOG |
|
PI |
PI |
|
POWER |
POWER |
|
RADIANS |
RADIANS |
|
RAND |
RANDOM |
|
ROUND |
ROUND |
|
SIGN |
SIGN |
|
SIN |
SIN |
|
SQRT |
SQRT |
|
SQUARE |
SQUARE |
논리적¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
CHOOSE |
*정의 예정 |
DECODE 를 사용하여 모방할 수 있습니다 |
GREATEST |
GREATEST |
|
IIF |
IIF |
|
LEAST |
LEAST |
|
NULLIF |
NULLIF |
메타데이터¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
TransactSQL |
Snowflake |
참고 |
@@PROCID |
*정의 예정 |
|
APP_NAME |
*정의 예정 |
|
APPLOCK_MODE |
*정의 예정 |
|
APPLOCK_TEST |
*정의 예정 |
|
ASSEMBLYPROPERTY |
*정의 예정 |
|
COL_LENGTH |
이 정보를 검색하기 위해 COL_LENGTH_UDF라는 UDF가 제공됩니다. 이 UDF는 Transact-SQL 설명서에 지정된 것처럼 VARCHAR 유형에서만 작동합니다. 다른 데이터 타입의 경우 NULL을 반환합니다. |
|
COL_NAME |
*정의 예정 |
|
COLUMNPROPERTY |
*정의 예정 |
|
DATABASE_PRINCIPAL_ID |
*정의 예정 |
인자가 없는 경우 CURRENT_USER에 매핑됩니다. |
DATABASEPROPERTYEX |
*정의 예정 |
|
DB_ID |
*정의 예정 |
CURRENT_DATABASE()로 변경하는 것이 좋습니다. 이 기능을 에뮬레이션해야 하는 경우 |
DB_NAME |
*정의 예정 |
위에서 언급한 프로시저 이름에서 주로 사용됩니다. |
FILE_ID |
*정의 예정 |
|
FILE_IDEX |
*정의 예정 |
|
FILE_NAME |
*정의 예정 |
|
FILEGROUP_ID |
*정의 예정 |
|
FILEGROUP_NAME |
*정의 예정 |
|
FILEGROUPPROPERTY |
*정의 예정 |
|
FILEPROPERTY |
*정의 예정 |
|
FULLTEXTCATALOGPROPERTY |
*정의 예정 |
|
FULLTEXTSERVICEPROPERTY |
*정의 예정 |
|
INDEX_COL |
*정의 예정 |
|
INDEXKEY_PROPERTY |
*정의 예정 |
|
INDEXPROPERTY |
*정의 예정 |
|
NEXT VALUE FOR |
*정의 예정 |
|
OBJECT_DEFINITION |
*정의 예정 |
|
OBJECT_ID |
*정의 예정 |
대부분의 경우 교체할 수 있습니다. 대부분의 경우는 DROP TABLE IF EXISTS로 교체할 수 있는 IF OBJECT_ID(‘dbo.TABLE’) IS NOT NULL DROP TABLE dbo.Table과 같습니다(이 구문은 SQL SERVER에서도 지원됨). object_id를 복제해야 하는 경우 UDF는 함수 호출의 두 번째 매개 변수에 따라 추가됩니다. |
OBJECT_NAME |
*정의 예정 |
다음으로 교체할 수 있습니다. CREATE OR REPLACE PROCEDURE FOO() RETURNS STRING LANGUAGE JAVASCRIPT AS ‘ var rs = snowflake.execute({sqlText: |
OBJECT_NAME(@@PROCID) |
‘ObjectName’ |
이 변환은 DeclareStatement 내부에 있을 때만 발생합니다. |
OBJECT_SCHEMA_NAME |
*정의 예정 |
|
OBJECT_SCHEMA_NAME(@@PROCID) |
:OBJECT_SCHEMA_NAME |
이 변환은 DeclareStatement 내에 있을 때만 발생합니다. |
OBJECTPROPERTY |
*정의 예정 |
|
OBJECTPROPERTYEX |
*정의 예정 |
|
ORIGINAL_DB_NAME |
*정의 예정 |
|
PARSENAME |
PARSENAME_UDF |
Parsename 함수의 동일한 동작을 에뮬레이션하기 위해 UDF를 생성합니다. |
*정의 예정 |
||
SCHEMA_NAME |
*정의 예정 |
|
SCOPE_IDENTITY |
*정의 예정 |
이것이 필요한 경우 시퀀스를 사용하고 삽입하기 전에 값을 캡처하는 것이 좋습니다 |
SERVERPROPERTY |
*정의 예정 |
|
STATS_DATE |
*정의 예정 |
|
TYPE_ID |
*정의 예정 |
|
TYPE_NAME |
*정의 예정 |
|
TYPEPROPERTY |
*정의 예정 |
|
VERSION |
*정의 예정 |
순위 지정¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
DENSE_RANK |
DENSE_RANK |
|
NTILE |
NTILE |
|
RANK |
RANK |
|
ROW_NUMBER |
ROW_NUMBER |
복제¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
PUBLISHINGSERVERNAME |
*정의 예정 |
행 세트¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
OPENDATASOURCE |
*정의 예정 |
|
OPENJSON |
*정의 예정 |
|
QPENQUERY |
*정의 예정 |
|
OPENROWSET |
*정의 예정 |
|
OPENXML |
OPENXML_UDF |
Snowflake에서 동등한 동작으로 사용되는 사용자 정의 함수입니다. |
STRING_SPLIT |
SPLIT_TO_TABLE |
Transact-SQL STRING_SPLIT의 enable_ordinal 플래그는 Snowflake의 SPLIT_TO_TABLE 함수에서 직접 지원되지 않습니다. 순서 열이 필요한 경우 이 동작을 복제하기 위해 STRING_SPLIT_UDF라는 UDF(사용자 정의 함수)가 생성됩니다. 순서 열이 없는 경우, STRING_SPLIT는 value라는 단일 열을 반환하지만, SPLIT_TO_TABLE은 value, index(ordinal과 동등), seq의 세 열을 반환합니다. 자세한 내용은 SPLIT_TO_TABLE 설명서를 참조하세요. |
보안¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
CERTENCODED |
*정의 예정 |
|
CERTPRIVATEKEY |
*정의 예정 |
|
CURRENT_USER |
CURRENT_USER |
|
DATABASE_PRINCIPAL_ID |
*정의 예정 |
|
HAS_PERMS_BY_NAME |
*정의 예정 |
|
IS_MEMBER |
*정의 예정 |
클라이언트에 새 역할 정의가 요구될 수 있지만 쿼리를 INFORMATION_SCHEMA 로 변경합니다 |
IS_ROLEMEMBER |
*정의 예정 |
<p>Snowflake의 유사 함수</p><p><strong>IS_ROLE_IN_SESSION</strong></p> |
IS_SRVROLEMEMBER |
*정의 예정 |
|
LOGINPROPERTY |
*정의 예정 |
|
ORIGINAL_LOGIN |
*정의 예정 |
|
PERMISSIONS |
*정의 예정 |
|
PWDCOMPARE |
*정의 예정 |
|
PWDENCRYPT |
*정의 예정 |
|
SCHEMA_ID |
*정의 예정 |
|
SCHEMA_NAME |
*정의 예정 |
|
SESSION_USER |
*정의 예정 |
|
SUSER_ID |
*정의 예정 |
|
SUSER_NAME |
*정의 예정 |
|
SUSER_SID |
*정의 예정 |
|
SUSER_SNAME |
*정의 예정 |
|
sys.fn_builtin_permissions |
*정의 예정 |
|
sys.fn_get_audit_file |
*정의 예정 |
|
sys.fn_my_permissions |
*정의 예정 |
|
SYSTEM_USER |
*정의 예정 |
|
USER_ID |
*정의 예정 |
|
USER_NAME |
*정의 예정 |
CURRENT_USER 로 매핑됩니다 |
String¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
ASCII |
ASCII |
|
CHAR |
CHR, CHAR |
|
CHARINDEX |
CHARINDEX |
|
CONCAT |
CONCAT |
|
CONCAT_WS |
CONCAT_WS |
|
COALESCE |
COALESCE |
|
DIFFERENCE |
*정의 예정 |
|
FORMAT |
TO_CHAR |
해당 형식(숫자 또는 날짜 시간)이 완전히 지원되지 않으면 SSC-EWI-0006 또는 SSC-FDM-0036이 생성될 수 있습니다. |
LEFT |
LEFT |
|
LEN |
LEN |
|
LOWER |
LOWER |
|
LTRIM |
LTRIM |
|
NCHAR |
*정의 예정 |
|
PATINDEX |
*정의 예정 |
REGEXP_INSTR 로 매핑됩니다. |
QUOTENAME |
QUOTENAME_UDF |
Quotename 함수의 동일한 동작을 에뮬레이션하기 위해 UDF 를 생성합니다 |
REPLACE |
REPLACE |
|
REPLICATE |
REPEAT |
|
REVERSE |
REVERSE |
|
RIGHT |
RIGHT |
|
RTRIM |
RTRIM |
|
SOUNDEX |
SOUNDEX |
|
SPACE |
*정의 예정 |
|
STR |
*정의 예정 |
|
STRING_AGG |
*정의 예정 |
|
STRING_ESCAPE |
*정의 예정 |
|
STRING_SPLIT |
SPLIT_TO_TABLE |
|
STUFF |
*정의 예정 |
CREATE OR REPLACE FUNCTION STUFF(S string, STARTPOS int, LENGTH int, NEWSTRING string) RETURNS string LANGUAGE SQL AS ‘ left(S, STARTPOS) |
SUBSTRING |
SUBSTRING |
|
TRANSLATE |
TRANSLATE |
|
TRIM |
TRIM |
|
UNICODE |
UNICODE |
|
UPPER |
UPPER |
시스템¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
$PARTITION |
*정의 예정 |
|
@@ERROR |
*정의 예정 |
|
@@IDENTITY |
*정의 예정 |
이것이 필요한 경우 시퀀스를 사용하고 삽입하기 전에 값을 캡처하는 것이 좋습니다 |
@@PACK_RECEIVED |
*정의 예정 |
|
@@ROWCOUNT |
*정의 예정 |
|
@@TRANCOUNT |
*정의 예정 |
|
BINARY_CHECKSUM |
*정의 예정 |
|
CHECKSUM |
*정의 예정 |
|
COMPRESS |
COMPRESS |
<p>Snowflake 버전에는 압축 방법을 나타내는 메서드 인자가 있습니다. 유효한 값은 다음과 같습니다. <strong>SNAPPY, ZLIB, ZSTD, BZ2</strong></p><p>압축 수준은 괄호로 묶여 지정되며 음이 아닌 정수여야 합니다.</p> |
CONNECTIONPROPERTY |
*정의 예정 |
|
CONTEXT_INFO |
*정의 예정 |
|
CURRENT_REQUEST_ID |
*정의 예정 |
|
CURRENT_TRANSACTION_ID |
*정의 예정 |
|
DECOMPRESS |
*정의 예정 |
Snowflake에는 이를 위한 두 가지 함수 DECOMPRESS_BINARY 및 DECOMPRESS_STRING 이 있습니다. |
ERROR_LINE |
*정의 예정 |
<p>SnowScript: Snowflake에서 **[SSC-EWI-0040](/migrations/snowconvert-docs/general/technical-documentation/issues-and-troubleshooting/conversion-issues/generalEWI.md)**와 함께 사용하도록 지원되지 않습니다.</p> <p>JavaScript: **ERROR\_LINE** 헬퍼에 매핑됩니다. EXEC 헬퍼는 스택 추적에서 Exception 줄 속성을 캡처합니다. </p> |
ERROR_MESSAGE |
SQLERRM |
추가된 SSC-FDM-TS0023에서 반환된 오류 메시지는 Snowflake에서 다를 수 있습니다. |
ERROR_NUMBER |
*정의 예정 |
<p>SnowScript: Snowflake에서 **[SSC-EWI-0040](/migrations/snowconvert-docs/general/technical-documentation/issues-and-troubleshooting/conversion-issues/generalEWI.md)**와 함께 사용하도록 지원되지 않습니다.</p> <p>JavaScript: **ERROR\_NUMBER** 헬퍼에 매핑됩니다. EXEC 헬퍼는 Exception 코드 속성을 캡처합니다.</p> |
ERROR_PROCEDURE |
Mapped |
<p>SnowScript: 현재 프로시저 이름을 사용합니다. 추가된 **SSC-FDM-TS0023** 결과 값은 예외가 발생하는 위치가 아니라 함수가 호출되는 저장 프로시저를 기준으로 합니다.</p><p>JavaScript: `arguments.callee.name` 프로시저 속성에서 가져온 **ERROR\_PROCEDURE** 헬퍼에 매핑됩니다.</p> |
ERROR_SEVERITY |
*정의 예정 |
<p>SnowScript: Snowflake에서 **[SSC-EWI-0040](/migrations/snowconvert-docs/general/technical-documentation/issues-and-troubleshooting/conversion-issues/generalEWI.md)**와 함께 사용하도록 지원되지 않습니다.</p> |
ERROR_STATE |
SQLSTATE |
<p>SnowScript: **SQLSTATE** snowflake 속성으로 변환됩니다. 추가된 **SSC-FDM-TS0023**의 반환된 값은 Snowflake에서 다를 수 있습니다.</p> <p>JavaScript: 헬퍼는 Exception 상태 속성을 캡처합니다. </p> |
FORMATMESSAGE |
FORMATEMESSAGE_UDF |
FORMATMESSAGE 함수와 동일한 동작을 에뮬레이션하지만 몇 가지 제한이 있는 UDF 를 생성합니다. |
GET_FILESTREAM_TRANSACTION_CONTEXT |
*정의 예정 |
|
GETANSINULL |
*정의 예정 |
|
HOST_ID |
*정의 예정 |
|
HOST_NAME |
*정의 예정 |
|
ISNULL |
NVL |
|
ISNUMERIC |
*정의 예정 |
직접적인 등가물은 없지만 사용자 정의 UDF 에 매핑하여 TSQL 과 동일한 값을 반환할 수 있습니다. |
MIN_ACTIVE_ROWVERSION |
*정의 예정 |
|
NEWID |
*정의 예정 |
UUID_STRING 으로 매핑됩니다 |
NEWSEQUENTIALID |
*정의 예정 |
|
ROWCOUNT_BIG |
*정의 예정 |
|
SESSION_CONTEXT |
*정의 예정 |
|
SESSION_ID |
*정의 예정 |
|
XACT_STATE |
*정의 예정 |
|
시스템 통계¶
TransactSql |
Snowflake |
참고 |
|---|---|---|
@@CONNECTIONS |
*정의 예정 |
<p>Snowflake의 유사 함수: <strong>LOGIN_HISTORY.</strong></p><p>지정된 시간 범위 내에서 로그인 이벤트를 반환합니다.</p> |
@@PACK_RECEIVED |
*정의 예정 |
|
@@CPU_BUSY |
*정의 예정 |
|
@@PACK_SENT |
*정의 예정 |
|
@@TIMETICKS |
*정의 예정 |
|
@@IDLE |
*정의 예정 |
|
@@TOTAL_ERRORS |
*정의 예정 |
|
@@IO_BUSY |
*정의 예정 |
|
@@TOTAL_READ |
*정의 예정 |
|
@@PACKET_ERRORS |
*정의 예정 |
|
@@TOTAL_WRITE |
*정의 예정 |
텍스트 및 이미지¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
TEXTPTR |
*정의 예정 |
|
TEXTVALID |
*정의 예정 |
트리거¶
TransactSQL |
Snowflake |
참고 |
|---|---|---|
COLUMNS_UPDATED |
*정의 예정 |
|
EVENTDATA |
*정의 예정 |
|
TRIGGER_NESTLEVEL |
*정의 예정 |
|
UPDATE |
*정의 예정 |
시스템 함수¶
이 섹션에서는 Transact-SQL의 시스템 함수와 기능적으로 동등한 Snowflake SQL 및 JavaScript 코드를 설명하는데, 특히 Snowflake의 UDFs 생성에 초점을 맞춥니다
ISNULL¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
NULL 을 지정된 대체 값으로 바꿉니다. (Transact-SQL 의 ISNULL).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
COMPANYNAME |
|---|
SNOWFLAKE |
Snowflake SQL¶
결과:
COMPANYNAME |
|---|
SNOWFLAKE |
NEWID¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
고유 식별자 유형의 고유 값을 생성합니다. (Transact-SQL 의 NEWID).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
경고
런타임에 고유한 ID 를 생성하기 때문에 출력은 다를 수 있습니다
SQL 서버¶
결과:
ID |
|---|
47549DDF-837D-41D2-A59C-A6BC63DF7910 |
Snowflake SQL¶
결과:
ID |
|---|
6fd4312a-7925-4ad9-85d8-e039efd82089 |
NULLIF¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 두 식이 같으면 null 값을 반환합니다.
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
RESULT1 |
RESULT2 |
|---|---|
6 |
Null |
Snowflake SQL¶
결과:
RESULT1 |
RESULT2 |
|---|---|
6 |
Null |
@@ROWCOUNT¶
Applies to
SQL 서버
설명¶
마지막 문의 영향을 받은 행의 수를 반환합니다. (Transact-SQL 의 @@ROWCOUNT).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
3 |
Snowflake SQL¶
결과:
:ADDCOUNT |
|---|
3 |
FORMATMESSAGE¶
Applies to
SQL 서버
설명¶
Sys.messages의 기존 메시지 또는 제공된 문자열에서 메시지를 생성합니다. (Transact-SQL 의 FORMATMESSAGE).
샘플 소스 패턴¶
Snowflake는 FORMATMESSAGE 함수를 지원하지 않으므로 FORMATMESSAGE_UDF를 추가하여 동작을 시뮬레이션합니다.
구문¶
SQL 서버¶
예¶
SQL 서버¶
결과:
RESULT |
|---|
This is the first variable and this is the second variable. |
Snowflake¶
결과:
RESULT |
|---|
This is the first variable and this is the second variable. |
FORMATMESSAGE_UDF¶
Snowflake에는 FORMATMESSAGE 기능을 제공하는 함수가 없습니다. SnowConvert AI는 FORMATMESSAGE의 동작을 에뮬레이션하는 다음 Python UDF를 생성합니다.
이 UDF 는 경우에 따라 올바르게 작동하지 않을 수 있습니다.
%I64d자리 표시자를 사용하면 오류가 throw됩니다.치환 인자의 수가 자리 표시자의 수와 다르면 오류가 throw됩니다.
%u또는%X와 같은 일부 서명되지 않은 자리 표시자는 값 형식을 지정할 때 올바르게 작동하지 않습니다.message_ids를 처리할 수 없습니다.
문자열 함수¶
이 섹션에서는 Transact-SQL의 문자열 함수와 기능적으로 동등한 Snowflake SQL 및 JavaScript 코드를 설명하는데, 특히 Snowflake의 UDFs 생성에 초점을 맞춥니다.
CHAR¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
ASCII 테이블에 매개 변수로 전송된 정수가 포함된 단일 바이트 문자를 반환합니다(Transact-SQL 의 CHAR).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
예¶
SQL 서버¶
출력:
SMALLEST_A |
|---|
ª |
Snowflake SQL¶
결과:
SMALLEST_A |
|---|
ª |
JavaScript¶
결과:
SMALLEST_A |
|---|
ª |
CHARINDEX¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
매개 변수로 전송된 지정된 값이 일치할 때 처음 발생한 값의 인덱스를 반환합니다 (Transact-SQL 의 CHARINDEX) .
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
예¶
SQL 서버¶
결과:
INDEX |
|---|
33 |
Snowflake SQL¶
결과:
INDEX |
|---|
33 |
JavaScript¶
참고
Transact의 인덱스는 0에서 시작하는 JavaScript 대신 1에서 시작합니다.
결과:
INDEX |
|---|
33 |
COALESCE¶
Applies to
SQL 서버
Azure 시냅스 분석
참고
출력 코드의 일부 부분은 명확성을 위해 생략되었습니다.
설명¶
인자를 순서대로 평가하고 처음에는 NULL로 평가되지 않는 첫 번째 표현식의 현재 값을 반환합니다. 예를 들어, SELECT COALESCE(NULL, NULL, ‘third_value’, ‘fourth_value’)는 null이 아닌 첫 번째 값인 세 번째 값을 반환합니다. (Transact-SQL의 COALESCE).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
StartDate |
FIRST_NOT_NULL |
|---|---|
2009-01-14 |
2000-01-01 |
2008-01-31 |
2000-01-01 |
2007-11-11 |
2000-01-01 |
2007-12-05 |
2010-05-30 |
2010-05-31 |
2000-01-01 |
2008-01-06 |
2000-01-01 |
2008-01-24 |
2000-01-01 |
2009-02-08 |
2000-01-01 |
2008-12-29 |
2000-01-01 |
2009-01-16 |
2000-01-01 |
Snowflake SQL¶
결과:
StartDate |
FIRST_NOT_NULL |
|---|---|
2009-01-14 |
2000-01-01 |
2008-01-31 |
2000-01-01 |
2007-11-11 |
2000-01-01 |
2007-12-05 |
2010-05-30 |
2010-05-31 |
2000-01-01 |
2008-01-06 |
2000-01-01 |
2008-01-24 |
2000-01-01 |
2009-02-08 |
2000-01-01 |
2008-12-29 |
2000-01-01 |
2009-01-16 |
2000-01-01 |
CONCAT¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
문자열 값을 다른 문자열 값과 연결합니다. (Transact-SQL 의 CONCAT).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
예¶
SQL 서버¶
출력:
TITLE |
|---|
Ray of Light |
Snowflake SQL¶
출력:
TITLE |
|---|
Ray of Light |
JavaScript¶
출력:
————| Ray of Light|
LEFT¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 문자 수를 가진 문자열의 오른쪽 부분을 반환합니다. (Transact-SQL 의 RIGHT).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
동작을 에뮬레이션하는 데 사용되는 함수
예¶
SQL 서버¶
출력:
FIRST_NAME |
|---|
John |
Snowflake SQL¶
출력:
FIRST_NAME |
|---|
John |
JavaScript¶
출력:
FIRST_NAME |
|---|
John |
LEN¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
문자열의 길이를 반환합니다(Transact-SQL 의 LEN).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
예¶
SQL 서버¶
출력:
LEN |
|---|
11 |
Snowflake SQL¶
출력:
LEN |
|---|
11 |
JavaScript¶
출력:
LEN |
|---|
11 |
LOWER¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
문자열을 소문자로 변환합니다(Transact-SQL 의 LOWER).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
예¶
SQL 서버¶
출력:
LOWERCASE |
|---|
you are a prediction of the good ones |
Snowflake SQL¶
출력:
LOWERCASE |
|---|
you are a prediction of the good ones |
JavaScript¶
출력:
LOWERCASE |
|---|
you are a prediction of the good ones |
NCHAR¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
매개 변수로 전송된 정수의 UNICODE 문자를 반환합니다(Transact-SQL 의 NCHAR).
샘플 소스 패턴¶
구문¶
인자¶
식: 정수 식입니다.
Return Type¶
문자열 값으로, 수신된 입력에 따라 달라집니다.
예¶
쿼리¶
결과¶
ª |
참고
JavaScript 에서 이 함수에 대한 등가성은 CHAR 에 설명되어 있습니다.
REPLACE¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 문자열 값의 모든 항목을 다른 문자열 값으로 바꿉니다. (Transact-SQL 의 REPLACE).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
예¶
SQL 서버¶
출력:
Snowflake SQL¶
출력:
JavaScript¶
\ 출력:
REPLICATE¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
문자열 값을 지정된 횟수만큼 복제합니다. (Transact-SQL 의 REPLICATE).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
예¶
SQL 서버¶
결과:
Snowflake SQL¶
결과:
JavaScript¶
결과:
RIGHT¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 문자 수를 가진 문자열의 오른쪽 부분을 반환합니다. (Transact-SQL 의 RIGHT).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
UDF 동작을 에뮬레이션하는 데 사용되는
예¶
SQL 서버¶
출력:
Snowflake SQL¶
출력:
JavaScript¶
\ 출력:
RTRIM¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
선행 공백을 제거한 후 문자 식을 반환합니다. (Transact-SQL 의 RTRIM).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
동작을 에뮬레이션하는 데 사용되는 사용자 정의 함수
예¶
SQL 서버¶
입력:
출력:
Snowflake SQL¶
결과:
JavaScript¶
결과:
SPACE¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
빈 공백의 개수를 반환합니다. (Transact-SQL 의 SPACE).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
동작을 에뮬레이션하는 데 사용되는 사용자 정의 함수
예¶
SQL 서버¶
입력:
출력:
Snowflake SQL¶
입력:
출력:
JavaScript¶
입력:
출력:
SUBSTRING¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
선행 공백을 제거한 후 문자 식을 반환합니다. (Transact-SQL 의 RTRIM).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
동작을 에뮬레이션하는 데 사용되는 사용자 정의 함수
예¶
SQL 서버¶
입력:
출력:
Snowflake SQL¶
결과:
JavaScript¶
결과:
UPPER¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
문자열을 대문자로 변환합니다.(Transact-SQL 의 UPPER](https://docs.microsoft.com/en-us/sql/t-sql/functions/upper-transact-sql?view=sql-server-ver15)).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
예¶
SQL 서버¶
출력:
Snowflake SQL¶
출력:
JavaScript¶
\ 출력:
ASCII¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
ASCII 테이블에 있는 문자의 번호 코드를 반환합니다. (Transact-SQL 의 ASCII).
샘플 소스 패턴¶
구문¶
인자¶
식: VARCVHAR 또는 CHAR 식.
Return Type¶
INT.
예¶
쿼리¶
결과¶
JS 의 ASCII¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
이 함수는 ASCII 테이블에 있는 문자의 번호 코드를 반환합니다(JavaScript charCodeAt 함수 설명서).
샘플 소스 패턴¶
구문¶
인자¶
인덱스 (선택 사항): 문자를 가져와 ASCII 테이블에서 해당 코드 번호를 반환할 문자열의 인덱스입니다. 이 매개 변수를 지정하지 않으면 기본적으로 0이 사용됩니다.\
Return Type¶
Int.
예¶
쿼리¶
결과¶
QUOTENAME¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
따옴표로 구분된 문자열을 반환합니다. (Transact-SQL 의 QUOTENAME).
샘플 소스 패턴¶
구문¶
인자¶
string_expression: 구분할 문자열입니다.
quote_character: 문자열을 구분 기호로 사용할 문자 한 개입니다.
Return Type¶
NVARCHAR(258). 따옴표가 (‘), ([]), (“), ( () ), ( >< ), ({}) 또는 (`) 중 다른 경우 null입니다.
예¶
쿼리¶
결과¶
JS 의 QUOTENAME¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
안타깝게도 이 함수는 JavaScript 에서 사용할 수 없지만 미리 정의된 함수를 사용하여 구현할 수 있습니다.
샘플 소스 패턴¶
구현 예시¶
인자¶
string: 구분할 문자열 식입니다.
quote: 구분 기호로 사용할 따옴표.
Return Type¶
문자열.
예¶
쿼리¶
결과¶
CONCAT_WS¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
문자열 값 사이에 구분 기호를 사용하여 문자열 값을 다른 값과 연결합니다. (Transact-SQL 의 CONCAT_WS).
샘플 소스 패턴¶
구문¶
인자¶
구분 기호: 결합할 구분 기호입니다.
expression1, ... ,expressionN: 문자열로 찾을 식입니다.
Return Type¶
문자열 값으로, 수신된 입력에 따라 달라집니다.
예¶
쿼리¶
결과¶
JS 의 조인¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
구분 기호를 사용하여 문자열 인자를 호출 문자열에 연결합니다(JavaScript Join 함수 설명서).
샘플 소스 패턴¶
구문¶
인자¶
구분 기호: 조인할 문자.
Return Type¶
문자열.
예¶
쿼리¶
결과¶
SOUNDEX¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
두 문자열의 유사성을 평가하기 위해 4문자 코드를 반환합니다. (Transact-SQL 의 SOUNDEX).
샘플 소스 패턴¶
구문¶
인자¶
string_expression: 반전할 문자열 식입니다.
Return Type¶
매개 변수로 전송된 문자열 식과 동일한 데이터 타입입니다.
예¶
쿼리¶
결과¶
JS 의 SOUNDEX¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
안타깝게도 JavaScript 에서는 SOUNDEX 알고리즘을 실행하는 메서드를 제공하지 않지만 수동으로 구현할 수 있습니다.
샘플 소스 패턴¶
구현 예시¶
인자¶
word: SOUNDEX등가물을 얻기 위한 문자열 식입니다.
Return Type¶
문자열.
예¶
쿼리¶
결과¶
REVERSE¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
문자열을 반전시킵니다(Transact-SQL 의 REVERSE).
샘플 소스 패턴¶
구문¶
인자¶
string_expression: 반전할 문자열 식입니다.
Return Type¶
매개 변수로 전송된 문자열 식과 동일한 데이터 타입입니다.
예¶
쿼리¶
결과¶
JS 에서 반전¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
안타깝게도 이 함수는 JavaScript 에서 사용할 수 없지만 미리 정의된 함수를 사용하여 구현할 수 있습니다.
샘플 소스 패턴¶
구현 예시¶
인자¶
string: 반전할 문자열 식입니다.
Return Type¶
문자열.
예¶
쿼리¶
결과¶
STRING_ESCAPE¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
텍스트에서 특수 문자를 이스케이프하고 이스케이프된 문자가 포함된 텍스트를 반환합니다. (Transact-SQL 의 STRING_ESCAPE).
샘플 소스 패턴¶
구문¶
인자¶
text: 문자를 이스케이프할 텍스트입니다.
type: 이스케이프 문자를 이스케이프할 형식 유형입니다. 현재 JSON 형식만 지원됩니다.
Return Type¶
VARCHAR.
예¶
쿼리¶
결과¶
JS 의 문자열화¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
오브젝트를 JSON 문자열 형식으로 변환합니다(JavaScript stringify 함수 설명서).
샘플 소스 패턴¶
구문¶
인자¶
value: 변환할 오브젝트 식입니다.
Return Type¶
문자열.
예¶
쿼리¶
결과¶
TRIM¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
공백이 없는 문자 식을 반환합니다. (Transact-SQL 의 TRIM).
샘플 소스 패턴¶
구문¶
인자¶
string_expression: 변환할 문자열 식입니다.
Return Type¶
VARCHAR 또는 NVARCHAR
예¶
SQL 서버¶
출력:
Snowflake SQL¶
출력:
JS 의 트림¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
매개 변수로 전송된 새 패턴을 사용하여 패턴의 발생 위치를 바꿉니다(JavaScript Replace 함수 설명서).
샘플 소스 패턴¶
구문¶
인자¶
이 함수는 매개 변수를 수신하지 않습니다.
Return Type¶
문자열.
예¶
쿼리¶
결과¶
DIFFERENCE¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
SOUNDEX 알고리즘을 사용하여 두 문자열의 차이를 측정한 정수를 반환합니다. (Transact-SQL 의 DIFFERENCE).\ SOUNDEX 알고리즘을 실행하여 결과 문자열의 공통 문자를 계산합니다.
샘플 소스 패턴¶
구문¶
인자¶
expression1, expression2: 비교할 문자열 식입니다.
Return Type¶
Int.
예¶
쿼리¶
결과¶
JS 의 DIFFERENCE¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
안타깝게도 이 기능은 JS 에서 사용할 수 없지만, 쉽게 구현할 수 있습니다.
참고
이 함수를 사용하려면 SOUNDEX 알고리즘 구현이 필요합니다.
샘플 소스 패턴¶
구현 예시¶
인자¶
strA, strB: SOUNDEX 알고리즘을 실행하여 얻은 문자열 식입니다.
Return Type¶
문자열.
예¶
쿼리¶
결과¶
FORMAT¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 형식과 선택적 culture로 포맷된 값을 반환합니다. (Transact-SQL 의 FORMAT).
샘플 소스 패턴¶
구문¶
인자¶
value: 형식을 지정할 문자열 식입니다.
format: 원하는 형식입니다.
culture(선택 사항): 문화를 지정하는 NVarchar 인자입니다. 지정하지 않으면 현재 세션의 언어를 사용합니다.
Return Type¶
매개 변수가 유효하지 않은 경우 NULL, 그렇지 않으면 다음 데이터 타입을 따릅니다.
카테고리 |
.NET 타입 |
|
|---|---|---|
숫자 |
bigint |
Int64 |
숫자 |
int |
Int32 |
숫자 |
smallint |
Int16 |
숫자 |
tinyint |
바이트 |
숫자 |
소수점 |
SqlDecimal |
숫자 |
숫자 |
SqlDecimal |
숫자 |
float |
Double |
숫자 |
real |
Single |
숫자 |
smallmoney |
Decimal |
숫자 |
money |
Decimal |
날짜 및 시간 |
날짜 |
DateTime |
날짜 및 시간 |
시간 |
TimeSpan |
날짜 및 시간 |
날짜/시간 |
DateTime |
날짜 및 시간 |
smalldatetime |
DateTime |
날짜 및 시간 |
datetime2 |
DateTime |
날짜 및 시간 |
datetimeoffset |
DateTimeOffset |
예¶
쿼리¶
결과¶
쿼리¶
결과¶
CURRENCY |
|---|
₡244,900.25 |
JS 의 FORMAT¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
JavaScript 에서 날짜 및 정수 값의 형식을 지정하는 다양한 함수가 있습니다. 안타깝게도 이러한 함수는 1개의 방법으로 통합되어 있지 않습니다.
DateTime 값¶
구문¶
인자¶
locales (선택 사항): 적용할 형식의 문자열 식입니다.
options (선택 사항): 숫자 식의 형식에 대해 지원되는 속성이 다른 오브젝트(JavaScript NumberFormat 함수 설명서).
value: 형식화할 숫자 식입니다.
Return Type¶
문자열.
숫자값¶
구문¶
인자¶
locales (선택 사항): 적용할 형식의 문자열 식입니다.
options (선택 사항): 숫자 식의 형식에 대해 지원되는 속성이 다른 오브젝트(JavaScript NumberFormat 함수 설명서).
value: 형식화할 숫자 식입니다.
Return Type¶
문자열.
예¶
DateTime¶
쿼리¶
결과¶
숫자¶
쿼리¶
결과¶
PATINDEX¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 식에서 패턴이 처음 발생한 시작 위치를 반환합니다. (Transact-SQL 의 PATINDEX).
샘플 소스 패턴¶
구문¶
인자¶
pattern: 패턴을 찾습니다.
expression: 검색할 식입니다.
Return Type¶
정수. 패턴을 찾을 수 없으면 0을 반환합니다.
예¶
쿼리¶
결과¶
JS 의 검색¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
REGEX 를 사용하여 패턴의 인덱스를 찾습니다(JavaScript search 함수 설명서).
샘플 소스 패턴¶
구문¶
인자¶
regex: 원하는 패턴과 일치하는 정규식입니다.
Return Type¶
정수. 패턴이 문자열의 어떤 부분과도 일치하지 않으면 -1을 반환합니다.
예¶
쿼리¶
결과¶
STR¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
숫자 데이터에서 변환된 문자 데이터를 반환합니다. 문자 데이터는 지정된 길이와 소수점 이하 전체 자릿수로 오른쪽 정렬됩니다. (Transact-SQL 의 STR).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
인자¶
numeric_expression: 소수점이 있는 실수 식입니다.
length (선택 사항): 반환되는 식의 길이(포인트 표기법, 소수점 및 실수 부분 포함)입니다.
decimal(선택 사항): 소수점 이하 자릿수입니다.
Return Type¶
VARCHAR.
예¶
SQL 서버¶
입력:
출력:
Snowflake SQL¶
입력:
출력:
JS 의 STR¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
안타깝게도 이 기능은 JS 에서 사용할 수 없지만, 문자열에 대해 미리 정의된 기능을 사용하여 쉽게 구현할 수 있습니다.
샘플 소스 패턴¶
구현 예시¶
인자¶
number: 소수점이 있는 실수 식입니다.
max_length: 반환되는 식의 길이(포인트 표기법, 소수점 및 실수 부분 포함)입니다.
float_precision: 소수점의 오른쪽 자릿수입니다.
Return Type¶
문자열.
예¶
쿼리¶
결과¶
LTRIM¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
선행 공백을 제거한 후 문자 식을 반환합니다. (Transact-SQL 의 LTRIM).
샘플 소스 패턴¶
구문¶
인자¶
string_expression: 변환할 문자열 식입니다.
Return Type¶
VARCHAR 또는 NVARCHAR
예¶
쿼리¶
결과¶
JS 의 LTRIM¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
안타깝게도 이 함수는 JavaScript 에서 사용할 수 없지만 정규식을 사용하여 구현할 수 있습니다.
샘플 소스 패턴¶
구현 예시¶
인자¶
string: 공백을 제거하는 문자열 식입니다.
Return Type¶
문자열.
예¶
쿼리¶
결과¶
순위 지정 함수¶
This section describes the functional equivalents of ranking functions in Transact-SQL to Snowflake SQL and JavaScript code, oriented to their usage in stored procedures in Snowflake.
DENSE_RANK¶
Applies to
SQL 서버
Azure 시냅스 분석
참고
출력 코드의 일부 부분은 명확성을 위해 생략되었습니다.
설명¶
이 함수는 결과 세트 파티션 내의 각 행의 순위를 반환하며, 순위 값에는 간격이 없습니다. 특정 행의 순위는 해당 특정 행 앞에 오는 고유 순위 값의 수에 1을 더한 값입니다. (Transact-SQL 의 DENSE_RANK).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
Snowflake SQL¶
결과:
관련 EWIs¶
SSC-EWI-0001: 소스 코드 줄에 인식할 수 없는 토큰이 있습니다.
RANK¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
결과 세트의 파티션 내 각 행의 순위를 반환합니다. 행의 순위는 해당 행 앞에 오는 순위 수에 1을 더한 값입니다. (Transact-SQL 의 RANK).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
Snowflake SQL¶
결과:
관련 EWIs¶
SSC-EWI-0001: 소스 코드 줄에 인식할 수 없는 토큰이 있습니다.
ROW_NUMBER¶
Applies to
SQL 서버
Azure 시냅스 분석
참고
출력 코드의 일부 부분은 명확성을 위해 생략되었습니다.
설명¶
결과 세트의 출력을 숫자로 표시합니다. 보다 구체적으로, 각 파티션의 첫 번째 행에 대해 1부터 시작하여 결과 세트의 파티션 내에 있는 행의 일련 번호를 반환합니다. (Transact-SQL 의 ROW_NUMBER).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
출력:
Snowflake SQL¶
출력:
관련 EWIs¶
SSC-EWI-0001: 소스 코드 줄에 인식할 수 없는 토큰이 있습니다.
논리 함수¶
This section describes the functional equivalents of logical functions in Transact-SQL to Snowflake SQL and JavaScript code, oriented to their usage in stored procedures in Snowflake.
IIF¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
부울 식이 true 또는 false으로 평가되는지 여부에 따라 두 값 중 하나를 반환합니다. (Transact-SQL 의 IIF).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
Snowflake SQL¶
결과:
XML 함수¶
이 섹션에서는 Transact-SQL의 XML 함수가 Snowflake SQL로 어떻게 변환되는지 설명합니다.
쿼리¶
Applies to
SQL 서버
경고
이러한 변화는 향후에 제공될 예정입니다
설명¶
xml 데이터 타입의 인스턴스에 대해 XQuery 를 지정합니다. 결과는 xml 유형입니다. 이 메서드는 타입이 지정되지 않은XML 의 인스턴스를 반환합니다. (Transact-SQL 의 Query())
샘플 소스 패턴 ¶
다음 예제에서는 .query( )에 대한 변환을 자세히 설명합니다
SQL 서버 ¶
입력¶
출력¶
Snowflake SQL ¶
입력¶
출력¶
Known Issues¶
문제가 발견되지 않았습니다.
관련 EWIs¶
SSC-EWI-0036: 데이터 타입이 다른 데이터 타입으로 변환되었습니다.
값¶
Applies to
SQL 서버
경고
이러한 변화는 향후에 제공될 예정입니다
설명¶
XML 에 대해 XQuery 를 수행하여 유형의 값을 반환합니다. 이 메서드는 스칼라 값을 반환합니다. (Transact-SQL 의 value()).
샘플 소스 패턴 ¶
다음 예제에서는 .value()의 변환에 대해 자세히 설명합니다
SQL 서버 ¶
입력¶
출력¶
Snowflake SQL ¶
입력¶
출력¶
Known Issues¶
문제가 발견되지 않았습니다.
관련 EWIs¶
SSC-EWI-0036: 데이터 타입이 다른 데이터 타입으로 변환되었습니다.
집계 함수¶
이 섹션에서는 Transact-SQL의 집계 함수와 기능적으로 동등한 Snowflake SQL 및 JavaScript 코드를 설명하는데, 특히 Snowflake의 UDFs 생성에 초점을 맞춥니다.
COUNT¶
Applies to
SQL 서버
Azure 시냅스 분석
참고
출력 코드의 일부 부분은 명확성을 위해 생략되었습니다.
설명¶
이 함수는 그룹에서 찾은 항목의 수를 반환합니다. COUNT 는 COUNT_BIG 함수처럼 작동합니다. 이러한 함수는 반환 값의 데이터 타입만 다릅니다. COUNT 는 항상 int 데이터 타입 값을 반환합니다. COUNT_BIG 은 항상 bigint 데이터 타입 값을 반환합니다. (Transact-SQL 의 COUNT).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
TOTAL |
|---|
290 |
Snowflake SQL¶
결과:
TOTAL |
|---|
290 |
COUNT_BIG¶
Applies to
SQL 서버
Azure 시냅스 분석
참고
출력 코드의 일부 부분은 명확성을 위해 생략되었습니다.
설명¶
이 함수는 그룹에서 찾은 항목의 수를 반환합니다. COUNT\BIG 은 COUNT 함수처럼 작동합니다. 이러한 함수는 반환 값의 데이터 타입만 다릅니다. COUNT\BIG 은 항상 bigint 데이터 타입 값을 반환합니다. COUNT 는 항상 int 데이터 타입 값을 반환합니다. (Transact-SQL 의 COUNT_BIG).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
TOTAL |
|---|
290 |
Snowflake SQL¶
결과:
TOTAL |
|---|
290 |
SUM¶
Applies to
SQL 서버
Azure 시냅스 분석
참고
출력 코드의 일부 부분은 명확성을 위해 생략되었습니다.
설명¶
식에 있는 모든 값의 합계 또는 DISTINCT 값만 반환합니다. SUM 은 숫자 열에만 사용할 수 있습니다. Null 값은 무시됩니다. (Transact-SQL 의 SUM).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
TOTALVACATIONHOURS |
|---|
14678 |
Snowflake SQL¶
결과:
TOTALVACATIONHOURS |
|---|
14678 |
SnowConvert AI 사용자 지정 UDFs¶
설명¶
일부 Transact-SQL함수 또는 동작은 Snowflake에서 사용할 수 없거나 다르게 동작할 수 있습니다. 이러한 차이를 최소화하기 위해 일부 함수는 SnowConvert AI 사용자 지정 UDFs로 대체됩니다.
이러한 UDFs 는 마이그레이션 중에 UDF Helper 폴더의 Outpu 폴더 안에 자동으로 생성됩니다. 사용자 정의 UDF 당 1개의 파일이 있습니다.
OPENXML UDF¶
Applies to
SQL 서버
Azure 시냅스 분석
참고
출력 코드의 일부 부분은 명확성을 위해 생략되었습니다.
설명¶
이 사용자 정의 UDF 는 XML 문서를 통해 행 집합 뷰를 처리하기 위해 추가되었습니다. 이는 행 집합 공급자로 작동하기 때문에 선언에 사용됩니다.
이 버전의 UDF 에서 는선택적 매개 변수및 다른 노드 유형이 지원되지 않습니다. 요소 노드는 기본적으로 처리됩니다.
사용자 정의 UDF 오버로드¶
매개 변수
XML: XML 의 읽을 수 있는 내용을 나타내는
VARCHAR입니다.PATH: 행으로 처리할 노드의 패턴을 포함하는 varchar입니다.
UDF¶
Transact-SQL¶
쿼리¶
결과¶
Snowflake¶
참고
다음 예제는 환경 변수가 256바이트의 저장소만 지원하고 XML 데모 코드가 이 제한을 초과하여 사용하기 때문에 저장 프로시저로 분리되어 있습니다.
쿼리¶
결과¶
CustomerID |
ContactName |
|---|---|
VINET |
Paul Henriot |
LILAS |
Carlos Gonzlez |
쿼리¶
결과¶
CustomerID |
ContactName |
|---|---|
VINET |
Paul Henriot |
Known Issues¶
문제가 발견되지 않았습니다.
관련 EWIs¶
SSC-EWI-TS0075: 지원되지 않는 내장 프로시저입니다.
STR UDF¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
이 사용자 정의 UDF 는 숫자 데이터를 문자 데이터로 변환합니다.
사용자 정의 UDF 오버로드¶
매개 변수¶
FLOAT_EXPR: varchar로 변환할 숫자 식입니다.
FORMAT: 결과 varchar의 길이와 소수점 수가 포함된 varchar 식입니다. 이 형식은 SnowConvert 에서 자동으로 생성됩니다.
UDF¶
Transact-SQL¶
쿼리¶
결과¶
A |
B |
C |
D |
|---|---|---|---|
124 |
** |
123 |
123.5 |
Snowflake¶
쿼리¶
SWITCHOFFSET_UDF¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
이 사용자 정의 UDF 는 저장된 타임존 오프셋에서 지정된 새 타임존 오프셋으로 변경된 데이터타임오프셋 값을 반환하기 위해 추가되었습니다.
사용자 정의 UDF 오버로드¶
매개 변수
source_timestamp: datetimeoffset(n) 값으로 확인할 수 있는 TIMESTAMP_TZ 입니다.
target_tz: 타임존 오프셋을 나타내는 varchar입니다
UDF¶
Transact-SQL¶
쿼리¶
결과¶
Snowflake¶
쿼리¶
결과¶
fr_time |
cr_time |
|---|---|
1998-09-20 7:45:50.71345 +02:00 |
1998-09-19 23:45:50.7134500 -06:00 |
메타데이터 함수¶
This section describes the functional equivalents of metadata functions in Transact-SQL to Snowflake SQL and JavaScript code, oriented to their usage in stored procedures in Snowflake.
DB_NAME¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
이 함수는 지정된 데이터베이스의 이름을 반환합니다. (Transact-SQL 의 DB_NAME).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
RESULT |
|---|
ADVENTUREWORKS2019 |
Snowflake SQL¶
결과:
RESULT |
|---|
ADVENTUREWORKS2019 |
알려진 문제¶
1. CURRENT\DATABASE 함수는 특정 경우에 다른 동작을 합니다
DB_NAME function can be invoked with the database_id parameter, which returns the name of the specified database. Without parameters, the function returns the current database name. However, Snowflake does not support this parameter and the CURRENT_DATABASE function will always return the current database name.
관련 EWIs¶
SSC-FDM-TS0010: CURRENT_DATABASE 함수는 특정 경우에 다른 동작을 합니다.
OBJECT_ID¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
이 함수는 스키마 범위 오브젝트의 데이터베이스 오브젝트 식별 번호를 반환합니다.(Transact-SQL 의 OBJECT_ID).
SQL Server 구문¶
샘플 소스 패턴¶
1. Default transformation¶
SQL 서버¶
Snowflake SQL¶
2. Unknown database¶
SQL 서버¶
Snowflake SQL¶
3. Different object names¶
SQL 서버¶
Snowflake SQL¶
알려진 문제¶
1. OBJECT_ID_UDF 함수는 특정 경우에 다른 동작을 합니다
OBJECT\ID 는 오브젝트 식별 번호를 반환하지만OBJECT_ID_UDF 는 부울 값을 반환하므로OBJECT_ID 가 null 조건이 아닌 경우에만 동등하게 사용할 수 있습니다.
관련 EWIs¶
SSC-EWI-0001: 소스 코드 줄에 인식할 수 없는 토큰이 있습니다.
SSC-FDM-0007: 종속성이 누락된 요소
분석 함수¶
이 섹션에서는 Transact-SQL의 분석 함수와 기능적으로 동등한 Snowflake SQL 및 JavaScript 코드를 설명하는데, 특히 Snowflake의 UDFs 생성에 초점을 맞춥니다.
LAG¶
Applies to
SQL 서버
Azure 시냅스 분석
참고
출력 코드의 일부 부분은 명확성을 위해 생략되었습니다.
설명¶
SQL Server 2012(11.x)부터 자체 조인을 사용하지 않고 동일한 결과 세트의 이전 행에 있는 데이터에 액세스합니다. LAG는 현재 행 앞에 오는 지정된 물리적 오프셋의 행에 액세스할 수 있도록 합니다. SELECT 문의 이 분석 함수를 사용하여 현재 행의 값을 이전 행의 값과 비교합니다. (Transact-SQL의 COUNT).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
PREVIOUS |
ACTUAL |
|---|---|
NULL |
10 |
10 |
89 |
89 |
10 |
10 |
48 |
48 |
0 |
0 |
95 |
95 |
55 |
55 |
67 |
67 |
84 |
84 |
85 |
Snowflake SQL¶
결과:
PREVIOUS |
ACTUAL |
|---|---|
NULL |
10 |
10 |
89 |
89 |
10 |
10 |
48 |
48 |
0 |
0 |
95 |
95 |
55 |
55 |
67 |
67 |
84 |
84 |
85 |
데이터 타입 함수¶
이 섹션에서는 Transact-SQL의 데이터 타입 함수와 기능적으로 동등한 Snowflake SQL 및 JavaScript 코드를 설명합니다.
DATALENGTH¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
이 함수는 식을 표현하는 데 사용된 바이트 수를 반환합니다. (Transact-SQL 의 DATALENGTH).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
SIZE |
|---|
10 |
Snowflake SQL¶
결과:
SIZE |
|---|
10 |
수학 함수¶
This section describes the functional equivalents of mathematical functions in Transact-SQL to Snowflake SQL and JavaScript code, oriented to their usage in stored procedures in Snowflake.
ABS¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 숫자 식의 절대(양수) 값을 반환하는 수학 함수입니다. (ABS 는 음수 값을 양수 값으로 변경합니다. ABS 는 0 또는 양수 값에 영향을 주지 않습니다.) (Transact-SQL 의 ABS).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
예¶
SQL 서버¶
결과:
ABS(-5) |
|---|
5 |
Snowflake SQL¶
결과:
ABS(-5) |
|---|
5 |
JavaScript¶
결과:
COMPUTE_ABS(-5) |
|---|
5 |
AVG¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
참고
SnowConvert AI 헬퍼 코드 섹션은 생략됩니다.
이 함수는 그룹 내 값의 평균을 반환합니다. Null 값을 무시합니다. (Transact-SQL 의 AVG).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
AVG_VACATIONS |
|---|
50 |
Snowflake SQL¶
결과:
AVG_VACATIONS |
|---|
50 |
CEILING¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
매개 변수로 전송된 숫자보다 크거나 같은 가장 작은 정수를 반환하는 수학 함수입니다. (Transact-SQL 의 CEILING).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
JavaScript¶
예¶
SQL 서버¶
결과:
CEILING(642.20) |
|---|
643 |
Snowflake SQL¶
결과:
CEIL(642.20) |
|---|
643 |
JavaScript¶
결과:
FLOOR¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 숫자 식보다 작거나 같은 가장 큰 정수를 반환합니다. (Transact-SQL 의 FLOOR).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
Snowflake SQL¶
결과:
POWER¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 식의 값을 지정된 거듭제곱으로 반환합니다. (Transact-SQL 의 POWER).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
Snowflake SQL¶
결과:
관련 설명서¶
ROUND¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 길이 또는 전체 자릿수로 반올림된 숫자 값을 반환합니다. (Transact-SQL의 ROUND)
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
Snowflake SQL¶
결과:
관련 설명서¶
SQRT¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 실수 값의 제곱 루트를 반환합니다. (Transact-SQL 의 SQRT).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
Snowflake SQL¶
결과:
SQUARE¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 실수 값의 제곱을 반환합니다. (Transact-SQL 의 SQUARE).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
Snowflake SQL¶
결과:
STDEV¶
Applies to
SQL 서버
Azure 시냅스 분석
참고
출력 코드의 일부 부분은 명확성을 위해 생략되었습니다.
설명¶
지정된 식에 있는 모든 값의 통계적 표준 편차를 반환합니다. (Transact-SQL 의 STDEV).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
Snowflake SQL¶
결과:
STDEVP¶
Applies to
SQL 서버
Azure 시냅스 분석
참고
출력 코드의 일부 부분은 명확성을 위해 생략되었습니다.
설명¶
지정된 식의 모든 값에 대한 모집단의 통계적 표준 편차를 반환합니다. (Transact-SQL 의 STDVEP).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
Snowflake SQL¶
결과:
VAR¶
Applies to
SQL 서버
Azure 시냅스 분석
참고
출력 코드의 일부 부분은 명확성을 위해 생략되었습니다.
설명¶
지정된 식에 있는 모든 값의 통계적 분산을 반환합니다. (Transact-SQL 의 VAR).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
Snowflake SQL¶
결과:
POWER¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
특정 거듭제곱에 대해 지정된 식의 값을 반환합니다.\ (Transact-SQL 의 POWER).
샘플 소스 패턴¶
구문¶
인자¶
base: 숫자의 밑수, 부동 소수 식이어야 합니다.\ exp: 밑을 올리는 거듭제곱.
Return Type¶
반환 유형은 입력 식에 따라 다릅니다.
| Input Type | Return Type |
|---|---|
| float, real | float |
| decimal(p, s) | decimal(38, s) |
| int, smallint, tinyint | int |
| bigint | bigint |
| money, smallmoney | money |
| bit, char, nchar, varchar, nvarchar | float |
예¶
쿼리¶
결과¶
JS 의 POW¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지수 거듭제곱의 밑을 반환합니다.\ (JavaScript POW 함수 설명서).
샘플 소스 패턴¶
구문¶
인자¶
base: 숫자의 밑수, 부동 소수 식이어야 합니다.\ exp: 밑을 올리는 거듭제곱.
Return Type¶
매개 변수를 통해 전송된 데이터 타입이 숫자 식과 동일합니다.
예¶
쿼리¶
결과¶
ACOS¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
매개 변수로 전송된 숫자의 라디안 단위 아크사인을 반환하는 함수 (Transact-SQL 의 ACOS).
수학적으로 아코사인은 코사인의 역함수로 다음과 같이 정의할 수 있습니다.\ $$y = cos^ {-1}\왼쪽 화살표 x = cos(y)$$
For $$y = cos^{-1}(x)$$:
- Range: $$0\leqslant y \leqslant \pi$$ or $$0^{\circ}\leqslant y \leqslant 180^{\circ}$$
- Domain: $$-1\leqslant x \leqslant 1$$
샘플 소스 패턴¶
구문¶
인자¶
식: 숫자 float 식, 여기서 식은 $$[-1,1]$$입니다.
Return Type¶
0과 π 사이의 숫자 실수 식입니다. 매개 변수로 전송된 숫자 식이 $$[-1, 1]$$ 영역을 벗어나면 데이터베이스 엔진에서 오류를 throw합니다.
예¶
쿼리¶
결과¶
JS 의 ACOS¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 숫자의 아크코사인을 반환하는 함수\ (JavaScript ACOS 함수 설명서).
샘플 소스 패턴¶
구문¶
인자¶
식: 숫자 식. 여기서 식은 $$[-1,1]$$입니다.
Return Type¶
0과 π 사이의 숫자 식입니다. 매개 변수로 전송된 숫자 식이 라디안 $$[-1, 1]$$의 아코신 범위를 벗어난 경우 함수는 NaN 을 반환합니다.
예¶
쿼리¶
결과¶
ASIN¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
매개 변수로 전송된 숫자의 라디안 단위 아크사인을 반환하는 함수 (Transact-SQL 의 ASIN).
아크사인은 사인의 역함수로, \ $$y = sin^{-1} \Leftrightarrow x = sin(x)$$ 정의에 요약되어 있습니다.
$$y = sin^{-1}(x)$$의 경우:\ - 범위: $$-\frac{\pi}{2}\leqslant y \leqslant \frac{\pi}{2}$$ or $$-90^{\circ}\leqslant y \leqslant 90^{\circ}$$\ - Domain: $$-1\leqslant x \leqslant 1$$
샘플 소스 패턴¶
구문¶
인자¶
식: 숫자 float 식, 여기서 식은 $$[-1,1]$$입니다.
Return Type¶
$$-\frac{\pi}{2}$$ ㅁ $$\frac{\pi}{2}$$ 사이의 숫자 부동소수점 식. 매개 변수로 전송된 숫자 식이 $$[-1, 1]$$에 없으면 데이터베이스 엔진에서 오류를 throw합니다.
예¶
쿼리¶
결과¶
JS 의 ASIN¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 숫자의 아크사인을 반환하는 함수\ (JavaScript ASIN 함수 설명서).
샘플 소스 패턴¶
구문¶
인자¶
식: 숫자 식. 여기서 식은 $$[-1,1]$$입니다.
Return Type¶
$$-\frac{\pi}{2}$$ 및 $$\frac{\pi}{2}$$ 사이의 숫자 식입니다. 매개 변수로 전송된 숫자 식이 아코사인 $$[-1, 1]$$의 영역을 벗어난 경우 함수는 NaN 을 반환합니다.
예¶
쿼리¶
결과¶
COS¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
매개 변수를 통해 전송된 각도의 코사인을 반환하는 함수(라디안 단위로 측정해야 함) (Transact-SQL 의 COS).
코사인의 정의:\ $$y = cos(x)$$\ 여기서:\ - Range: $$-1\leqslant y \leqslant 1$$\ - 영역: $$\mathbb{R}$$
샘플 소스 패턴¶
구문¶
인자¶
expression: 숫자 float 식, 여기서 식은 $$\mathbb{R}$$에 있습니다.
Return Type¶
$$[-1, 1]$$의 숫자 실수 식입니다.
예¶
쿼리¶
결과¶
JS 의 COS¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
각도의 코사인을 라디안 단위로 반환하는 정적 함수(JavaScript COS 함수 설명서).
샘플 소스 패턴¶
구문¶
인자¶
식: 숫자 표현식.
Return Type¶
매개 변수를 통해 전송된 데이터 타입이 숫자 식과 동일합니다.
예¶
쿼리¶
결과¶
COT¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
매개 변수를 통해 전송된 각도의 코탄젠트를 라디안 단위로 반환합니다(Transact-SQL 의 COT).
코사인의 정의: \ $$cot(x) =\frac {cos(x)}{sin(x)} $$ 또는 $$cot(x) =\frac {1}{tan(x)} $$\ 코사인을 계산하려면 매개 변수가 사인 및 cosine 함수의 제약 조건을 준수해야 합니다.
샘플 소스 패턴¶
구문¶
인자¶
expression: 숫자 float 식, 여기서 식은 $$\mathbb{R}-{sin(expression)=0 \wedge tan(expression) =0}$$에 있습니다.
Return Type¶
$$\mathbb{R}$$의 숫자 float 식입니다.
예¶
쿼리¶
결과¶
JS 의 COT¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
안타깝게도 JavaScript 의 Math 오브젝트는 지정된 각도의 코탄젠트를 계산하는 방법을 제공하지 않습니다.\ 이는 $$cot(x) = \frac{cos(x)}{sin(x)}$$ 방정식을 사용하여 계산할 수 있습니다
샘플 소스 패턴¶
구현 예시¶
인자¶
각도: 라디안 단위의 숫자 식입니다.
Return Type¶
매개 변수를 통해 전송된 데이터 타입이 숫자 식과 동일합니다.
예¶
쿼리¶
결과¶
RADIANS¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
도를 라디안으로 변환합니다.\ (Transact-SQL 의 RADIANS).
샘플 소스 패턴¶
구문¶
인자¶
식: 도 단위의 숫자 식입니다.
Return Type¶
매개 변수를 통해 전송된 데이터 타입이 라디안 단위의 숫자 식과 동일합니다.
예¶
쿼리¶
결과¶
RADIANS(180) |
|---|
3.141592653589793116 |
참고
이 함수의 매개 변수를 float로 형변환하면 위의 문은 PI 값 대신 3을 반환합니다.
JS 의 RADIANS¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
JavaScript 는 지정된 각도의 각도를 라디안으로 변환하는 방법을 제공하지 않습니다.\ 이는 $$Radians = \frac{\pi}{180^{\circ}} \cdot angle$$ 공식을 사용하여 계산할 수 있습니다
샘플 소스 패턴¶
구현 예시¶
인자¶
각도: 도 단위의 부동 소수점 식입니다.
Return Type¶
매개 변수를 통해 전송된 데이터 타입이 라디안 단위의 숫자 식과 동일합니다.
예¶
쿼리¶
결과¶
RADIANS(180) |
|---|
3.141592654 |
PI¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
PI 의 값을 반환합니다.\ (Transact-SQL 의 PI).
샘플 소스 패턴¶
구문¶
인자¶
이 메서드는 매개 변수를 수신하지 않습니다.
Return Type¶
부동소수점.
예¶
쿼리¶
결과¶
JS 의 PI¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
PI 숫자(약 3.141592…)를 나타내는 상수\ (JavaScript PI 설명서).
샘플 소스 패턴¶
구문¶
예¶
쿼리¶
결과¶
DEGREES¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
매개 변수를 통해 전송된 라디안 단위의 각도를 도 단위로 변환합니다(Transact-SQL 의 DEGREES).
샘플 소스 패턴¶
구문¶
인자¶
식: 라디안 단위의 숫자 float 식입니다.
Return Type¶
매개 변수를 통해 전송된 데이터 타입이 숫자 식과 동일합니다.
예¶
쿼리¶
결과¶
JS 의 DEGREES¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
JavaScript 는 라디안을 지정된 각도의 각도로 변환하는 방법을 제공하지 않습니다.\ 이 각도는 $$Degrees = \frac{180^{\circ}}{\pi} \cdot angle$$ 공식을 사용하여 계산할 수 있습니다.
샘플 소스 패턴¶
구현 예시¶
인자¶
각도: 라디안 단위의 숫자 식입니다.
Return Type¶
매개 변수를 통해 전송된 데이터 타입이 숫자 식과 동일합니다.
예¶
쿼리¶
결과¶
LOG¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
숫자의 자연 로그를 반환합니다\ (Transact-SQL 의 LOG).
샘플 소스 패턴¶
구문¶
인자¶
식: 숫자 식입니다.
base (선택 사항): 숫자의 로그를 계산하는 밑으로, 기본값은 오일러입니다.
Return Type¶
부동소수점.
예¶
쿼리¶
결과¶
JS 의 LOG¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
오일러의 수를 기본으로 사용하여 로그를 반환합니다. (JavaScript LOG 함수 설명서).
경고
안타깝게도 JavaScript 는 매개 변수를 통해 로그의 밑을 받는 메서드를 제공하지 않지만, 밑을 인자로 나누면 해결할 수 있습니다.
샘플 소스 패턴¶
구문¶
인자¶
식: 숫자 식입니다. 양수여야 하며, 그렇지 않으면NaN 을 반환합니다.\
Return Type¶
매개 변수를 통해 전송된 데이터 타입이 숫자 식과 동일합니다.
예¶
쿼리¶
결과¶
ATAN¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
매개 변수로 전송된 숫자의 라디안 단위의 아크탄젠트를 반환하는 함수 (Transact-SQL 의 ATAN).
아크탄젠트는 탄젠트의 역함수로, $$y = arctan^{-1} \Leftrightarrow x = tan(x)$$ 정의에 요약되어 있습니다.\
$$y = tan^{-1}(x)$$의 경우:\ - 범위: $$-\frac{\pi}{2}\leqslant y \leqslant \frac{\pi}{2}$$ 또는 $$-90^{\circ}\leqslant y \leqslant 90^{\circ}$$\ - 영역: $$\mathbb{R}$$
샘플 소스 패턴¶
구문¶
인자¶
expression: 숫자 float 식 또는 float로 변환할 수 있는 숫자 유형입니다.
Return Type¶
$$-\frac{\pi}{2}$$ ㅁ $$\frac{\pi}{2}$$ 사이의 숫자 부동소수점 식.
예¶
쿼리¶
결과¶
JS 의 ATAN¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 숫자의 아크탄젠트를 반환하는 함수\ (JavaScript ATAN 함수 설명서).
샘플 소스 패턴¶
구문¶
인자¶
식: 숫자 식입니다.
Return Type¶
$$-\frac{\pi}{2}$$ 및 $$\frac{\pi}{2}$$ 사이의 숫자 식입니다.
예¶
쿼리¶
결과¶
ATN2¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
매개 변수로 전송된 두 좌표의 라디안 단위의 아크탄젠트를 반환하는 함수(Transact-SQL 의 ATN2).
$$z = tan^{-1}(x, y)$$의 경우:\ - 범위: $$-\pi\leqslant z \leqslant \pi$$ 또는 $$-180^{\circ}\leqslant z \leqslant 180^{\circ}$$\ - 영역: $$\mathbb{R}$$
샘플 소스 패턴¶
구문¶
인자¶
expression1 및 expression2: 숫자 식입니다.
Return Type¶
$$-\pi$$ ~ $$\pi$$ 사이의 숫자 식입니다.
예¶
쿼리¶
결과¶
JS 의 ATAN2¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
두 매개 변수의 아크탄젠트를 반환하는 함수\ (JavaScript ATAN2 함수 설명서).
샘플 소스 패턴¶
구문¶
인자¶
expression_1 및 expression_2: 숫자 표현식.
Return Type¶
$$-\pi$$ ~ $$\pi$$ 사이의 숫자 식입니다.
예¶
쿼리¶
결과¶
LOG10¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
숫자의 10차 로그를 반환합니다\ (Transact-SQL 의 LOG10).
샘플 소스 패턴¶
구문¶
인자¶
expression: 숫자 식, 양수여야 합니다.
Return Type¶
부동소수점.
예¶
쿼리¶
결과¶
JS 의 LOG10¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
숫자에서 밑의 10 로그를 반환합니다\ (JavaScript LOG10 함수 설명서).
샘플 소스 패턴¶
구문¶
인자¶
식: 숫자 식입니다. 양수여야 하며, 그렇지 않으면NaN 을 반환합니다.\
Return Type¶
매개 변수를 통해 전송된 데이터 타입이 숫자 식과 동일합니다.
예¶
쿼리¶
결과¶
EXP¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
오일러 수의 지수값을 반환합니다(Transact-SQL 의 EXP).
샘플 소스 패턴¶
구문¶
인자¶
식: 숫자 식입니다.
Return Type¶
매개 변수를 통해 전송된 데이터 타입이 숫자 식과 동일합니다.
예¶
쿼리¶
결과¶
JS 의 EXP¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
오일러의 수를 나타내는 상수(약 2.718…)\ (JavaScript 오일러 수 설명서).\ JavaScript 를 사용하면 오일러 지수만 지원하는 Transact-SQL 대신 이 상수를 사용하여 다양한 연산을 할 수 있습니다.
샘플 소스 패턴¶
구문¶
예¶
쿼리¶
결과¶
변환 함수¶
이 섹션에서는 Transact-SQL의 날짜 및 시간 함수와 기능적으로 동등한 Snowflake SQL 코드를 설명합니다.
CONVERT¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
한 데이터 타입의 식을 다른 데이터 타입으로 변환합니다. (Transact-SQL 의 CONVERT).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과¶
MyDate |
|---|
1998 |
Snowflake SQL¶
결과¶
MYDATE |
|---|
1998 |
날짜 유형을 varchar로 형 변환¶
SQL 서버¶
결과¶
RESULT |
|---|
12/08/22 |
Swowflake SQL¶
결과¶
RESULT |
|---|
12/08/22 |
날짜 유형을 크기가 포함된 varchar로 변환하기¶
SQL 서버¶
결과¶
RESULT |
|---|
07 |
Snowflake SQL¶
결과¶
RESULT |
|---|
07 |
날짜 형변환에 지원되는 형식은 다음과 같습니다.
날짜 형식
코드 |
형식 |
|---|---|
1 |
mm/dd/yy |
2 |
yy.mm.dd |
3 |
dd/mm/yy |
4 |
dd.mm.yy |
5 |
dd-mm-yy |
6 |
dd-Mon-yy |
7 |
Mon dd, yy |
10 |
mm-dd-yy |
11 |
yy/mm/dd |
12 |
yymmdd |
23 |
yyyy-mm-dd |
101 |
mm/dd/yyyy |
102 |
yyyy.mm.dd |
103 |
dd/mm/yyyy |
104 |
dd.mm.yyyy |
105 |
dd-mm-yyyy |
106 |
dd Mon yyyy |
107 |
Mon dd, yyyy |
110 |
mm-dd-yyyy |
111 |
yyyy/mm/dd |
112 |
yyyymmdd |
시간 형식
코드 |
형식 |
|---|---|
8 |
hh:mm:ss |
14 |
hh:mm:ss:ff3 |
24 |
hh:mm:ss |
108 |
hh:mm:ss |
114 |
hh:mm:ss:ff3 |
날짜 및 시간 형식
0 |
Mon dd yyyy hh:mm AM/PM |
9 |
Mon dd yyyy hh:mm:ss:ff3 AM/PM |
13 |
dd Mon yyyy hh:mm:ss:ff3 AM/PM |
20 |
yyyy-mm-dd hh:mm:ss |
21 |
yyyy-mm-dd hh:mm:ss:ff3 |
22 |
mm/dd/yy hh:mm:ss AM/PM |
25 |
yyyy-mm-dd hh:mm:ss:ff3 |
100 |
Mon dd yyyy hh:mm AM/PM |
109 |
Mon dd yyyy hh:mm:ss:ff3 AM/PM |
113 |
dd Mon yyyy hh:mm:ss:ff3 |
120 |
yyyy-mm-dd hh:mm:ss |
121 |
yyyy-mm-dd hh:mm:ss:ff3 |
126 |
yyyy-mm-dd T hh:mm:ss:ff3 |
127 |
yyyy-mm-dd T hh:mm:ss:ff3 |
이슬람 달력 날짜
코드 |
형식 |
|---|---|
130 |
dd mmm yyyy hh:mi:ss:ff3 AM/PM |
131 |
dd mmm yyyy hh:mi:ss:ff3 AM/PM |
현재 코드와 일치하는 패턴이 없는 경우 yyyy-mm-dd hh:mm:ss 로 형식이 지정됩니다
Converting string to DATE or DATETIME with style¶
When CONVERT targets a DATE, DATETIME, or DATETIME2 type and includes a literal style code, SnowConvert AI maps it to TO_DATE or TO_TIMESTAMP with the corresponding Snowflake format string.
SQL 서버¶
Snowflake SQL¶
The following table shows which target types produce TO_DATE versus TO_TIMESTAMP:
Target Type |
Snowflake Function |
|---|---|
DATE |
TO_DATE |
DATETIME |
TO_TIMESTAMP |
DATETIME2 |
TO_TIMESTAMP |
Converting VARBINARY / BINARY with style¶
When converting to VARBINARY or BINARY with a hex style (1 or 2), SnowConvert AI maps to TO_BINARY(expr, 'HEX'). Style 0 (default/ASCII) maps to a plain CAST. For VARBINARY(MAX), the outer CAST is omitted.
SQL 서버¶
Snowflake SQL¶
Converting with a dynamic style variable¶
When the style argument is a variable or expression instead of a literal, SnowConvert AI cannot determine the format string at conversion time. The function falls back to CAST and emits SSC-EWI-TS0098.
SQL 서버¶
Snowflake SQL¶
관련 EWIs¶
SSC-EWI-TS0098: CONVERT with a non-literal style cannot be mapped to a Snowflake format string.
TRY_CONVERT¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
형변환이 성공하면 지정된 데이터 타입으로 형변환된 값을 반환하고, 그렇지 않으면 null을 반환합니다.
(SQL Server Language Reference TRY_CONVERT)
구문¶
소스 패턴¶
기본 변환¶
To transform this function, we have to check the parameters of the TRY_CONVERT first.
형변환해야 하는 식이 문자열인 경우 TRY_CAST 로 변환되며, 이는 Snowflake의 함수입니다.
TRY_CAST¶
TRY_CAST 는 TRY_CONVERT 와 동일한 변환을 공유합니다.
예¶
Sql Server¶
결과는 TRY_CONVERT 의 예와 동일합니다.
Snowflake¶
Known Issues¶
데이터 타입이 Varchar 또는 Char인 경우 다르게 변환됩니다.
TRY_CAST 를 VARCHAR 또는 CHAR 과 함께 사용할 경우 오류가 발생하므로 다음과 같이 변환됩니다
SQL_VARIANT 및 GEOGRAPHY의 데이터 타입도 마찬가지입니다.
다음으로 변환됩니다
식이 문자열이 아닌 경우 TRY_CAST 는 문자열 식에서만 작동하므로 실패할 가능성이 매우 높습니다.
이 경우 다른 변환이 수행됩니다
다음으로 변환됩니다
이제 이러한 변환을 통해 함수를 어떻게 사용하느냐에 따라 문제가 발생할 수 있습니다. SqlServer 의 TRY_CONVERT 는 변환할 수 없는 경우 null을 반환합니다.
다음과 같은 논리를 수행하는 데 사용할 수 있습니다
TRY_CONVERT 조건은 TRY_CAST 과 함께 사용할 수 있지만, TO_VARCHAR 또는 CAST 로 변환하면 어떻게 될까요? 해당 함수에서 변환에 실패하면 null을 반환하는 대신 오류를 발생시킵니다.
예¶
이 샘플에는 데이터 타입이 다른 TRY_CONVERT 가 여러 개 있습니다
SQL 서버¶
해당 선택 항목을 마이그레이션하면 다음과 같은 결과가 표시됩니다
Snowflake¶
각각을 실행하고 결과를 비교해 보겠습니다.
별칭 |
SqlServer 결과 |
Snowflake 결과 |
|---|---|---|
NUMERIC_RESULT |
12345 |
12345 |
DECIMAL_RESULT |
123.45 |
123.45 |
INT_RESULT |
123 |
123 |
FLOAT_RESULT |
123.02 |
123.02 |
DOUBLE_PRECISION_RESULT |
123.02 |
123.02 |
DATE_RESULT |
2017-01-01 |
2017-01-01 |
DATETIME_RESULT |
2017-01-01 12:00:00.000 |
2017-01-01 12:00:00.000 |
SMALLDATETIME_RESULT |
2017-01-01 12:00:00 |
2017-01-01 12:00:00.000 |
TIME_RESULT |
12:00:00.0000000 |
12:00:00 |
TIMESTAMP_RESULT |
0x323031372D30312D |
2017-01-01 12:00:00.000 |
DATETIMEOFFSET_RESULT |
2017-01-01 12:00:00.0000000 +00:00 |
2017-01-01 12:00:00.000 -0800 |
VARCHAR_RESULT |
1234 |
1234 |
CHAR_RESULT |
1 |
1 |
SQL_VARIANT_RESULT |
2017-01-01 12:00:00 |
“2017-01-01 12:00:00” |
GEOGRAPHY_RESULT |
0xE610000001148716D9CEF7D34740D7A3703D0A975EC08716D9CEF7D34740CBA145B6F3955EC0 |
{ “coordinates”: [ [ -122.36, 47.656 ], [ -122.343, 47.656 ] ], “type”: “LineString” } |
관련 EWIs¶
SSC-FDM-TS0005: TRY_CONVERT/TRY_CAST 를 TRY_CAST 로 변환할 수 없습니다.
날짜 및 시간 함수¶
이 섹션에서는 Transact-SQL의 날짜 및 시간 함수와 기능적으로 동등한 Snowflake SQL 및 JavaScript 코드를 설명합니다.
AT TIME ZONE¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
_inputdate_를 대상 타임존의 해당 datetimeoffset 값으로 변환합니다. (Transact-SQL 의 AT TIME ZONE).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
Snowflake SQL¶
결과:
SQL 서버¶
결과:
Snowflake SQL¶
결과:
Known Issues¶
Snowflake는 SQL 서버가 지원하는 모든 타임존을 지원하지 않습니다. 지원되는 타임존은 이 링크에서 확인할 수 있습니다.
SQL 서버¶
결과:
Snowflake SQL¶
관련 EWIs¶
SSC-FDM-TS0024:At Time Zone 문의 CURRENT_TIMESTAMP 는 특정 경우 동작이 다를 수 있습니다.
SSC-EWI-TS0063: Snowflake에서 지원되지 않는 타임존입니다.
DATEADD¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
이 함수는 지정된 날짜의 지정된 날짜 부분을 나타내는 정수를 반환합니다. (Transact-SQL 의 DATEPART).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
Snowflake SQL¶
결과:
DATEDIFF¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
이 함수는 지정된 시작 날짜와 종료 날짜 사이에 교차한 지정된 날짜 부분 경계의 개수(부호 있는 정수 값)를 반환합니다. (Transact-SQL 의 DATEDIFF).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
DIFF |
|---|
1 |
Snowflake SQL¶
결과:
DIFF |
|---|
1 |
DATEFROMPARTS¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
이 함수는 지정된 연도, 월, 일 값에 매핑되는 날짜 값을 반환합니다. (Transact-SQL 의 DATEFROMPARTS).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
RESULT |
|---|
2022-12-12 |
Snowflake SQL¶
결과:
RESULT |
|---|
2022-12-12 |
DATENAME¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
이 함수는 지정된 날짜의 지정된 날짜 부분을 나타내는 문자 문자열을 반환합니다. (Transact-SQL 의 DATENAME).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
참고
이 변환은 입력에 따라 여러 함수를 사용합니다
예¶
SQL 서버¶
결과:
DATE1 |
DATE2 |
DATE3 |
|---|---|---|
May |
3 |
Tuesday |
Snowflake SQL¶
결과:
DATE1 |
DATE2 |
DATE3 |
|---|---|---|
May |
Tue |
Tue |
DATEPART¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
이 함수는 지정된 날짜의 지정된 날짜 부분을 나타내는 정수를 반환합니다. (Transact-SQL 의 DATEPART).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
YEAR |
|---|
2022 |
Snowflake SQL¶
결과:
YEAR |
|---|
2022 |
DAY¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
이 함수는 지정된 날짜의 요일(월)을 나타내는 정수를 반환합니다. (Transact-SQL 의 DAY).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
DAY |
|---|
10 |
Snowflake SQL¶
결과:
DAY |
|---|
10 |
EOMONTH¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
이 함수는 지정된 날짜가 포함된 월의 마지막 날을 오프셋 옵션과 함께 반환합니다. (Transact-SQL 의 EOMONTH).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
RESULT |
|---|
2022-05-31 |
Snowflake SQL¶
결과:
RESULT |
|---|
2022-05-31 |
GETDATE¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
데이터베이스 타임존 오프셋 없이 현재 데이터베이스 시스템 타임스탬프를 datetime 값으로 반환합니다. (Transact-SQL 의 GETDATE).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
DATE |
|---|
2022-05-06 09:54:42.757 |
Snowflake SQL¶
결과:
DATE |
|---|
2022-05-06 08:55:05.422 |
MONTH¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 _date_의 월을 나타내는 정수를 반환합니다. (Transact-SQL 의 MONTH).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
MONTH |
|---|
10 |
Snowflake SQL¶
결과:
MONTH |
|---|
10 |
SWITCHOFFSET¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
SWITCHOFFSET 은 지정된 타임스탬프 값을 특정 시간대 오프셋으로 조정합니다. 이는 숫자 값을 통해 수행됩니다. 자세한 내용은 SWITCHOFFSET (Transact-SQL)에서 확인할 수 있습니다.
샘플 소스 패턴¶
구문¶
UDF 헬퍼는 기능적으로 동등하며 SQLServer 의 SWITCHOFFSET 함수와 동일한 구문을 공유합니다.
SQLServer¶
Snowflake SQL¶
예¶
SQLServer¶
결과:
fr_time |
cr_time |
|---|---|
1998-09-20 7:45:50.71345 +02:00 |
1998-09-19 23:45:50.7134500 -06:00 |
Snowflake SQL¶
결과:
fr_time |
cr_time |
|---|---|
1998-09-20 7:45:50.71345 +02:00 |
1998-09-19 23:45:50.7134500 -06:00 |
SYSDATETIME¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
SQL 서버의 인스턴스가 실행 중인 컴퓨터의 날짜와 시간이 포함된 datetime2(7) 값을 반환합니다. (Transact-SQL 의 SYSDATETIME).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
SYSTEM_DATETIME |
|---|
2022-05-06 12:08:05.501 |
Snowflake SQL¶
결과:
SYSTEM_DATETIME |
|---|
211:09:14 |
SYSUTCDATETIME¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
SQL 서버의 인스턴스가 실행 중인 컴퓨터의 날짜와 시간이 포함된 datetime2(7) 값을 반환합니다. (Transact-SQL 의 SYSUTCDATETIME).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
SYSTEM_UTC_DATETIME |
|---|
2023-02-02 20:59:28.0926502 |
Snowflake SQL¶
결과:
SYSTEM_UTC_DATETIME |
|---|
2023-02-02 21:02:05.557 |
YEAR¶
Applies to
SQL 서버
Azure 시냅스 분석
설명¶
지정된 _date_의 연도를 나타내는 정수를 반환합니다. (Transact-SQL 의 YEAR).
샘플 소스 패턴¶
구문¶
SQL 서버¶
Snowflake SQL¶
예¶
SQL 서버¶
결과:
YEAR |
|---|
2022 |
Snowflake SQL¶
결과:
YEAR |
|---|
2022 |