SnowConvert: 組み込み関数

関数

Oracle

Snowflake

注意

ABS

ABS

ACOS

ACOS

ADD_MONTHS

ADD_MONTHS

ANY_VALUE

ANY_VALUE

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

APPROX_COUNT

*定義される

APPROX_COUNT_DISTINCT

APPROX_COUNT_DISTINCT

APPROX_COUNT_DISTINCT_AGG

*定義される

APPROX_COUNT_DISTINCT_DETAIL

*定義される

APPROX_MEDIAN

*定義される

APPROX_PERCENTILE

APPROX_PERCENTILE

APPROX_PERCENTILE_AGG

*定義される

APPROX_PERCENTILE_DETAIL

*定義される

APPROX_RANK

*定義される

APPROX_SUM

*定義される

ASCII

ASCII

ASCIISTR

*定義される

ASIN

ASIN

ATAN

ATAN

ATAN2

ATAN2

AVG

AVG

BFILENAME

*定義される

BIN_TO_NUM

*定義される

BITAND

BITAND

BIT_AND_AGG

BITAND_AGG

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

BITMAP_BIT_POSITION

BITMAP_BIT_POSITION

BITMAP_BUCKET_NUMBER

BITMAP_BUCKET_NUMBER

BITMAP_CONSTRUCT___AGG

BITMAP_CONSTRUCT___AGG

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

BITMAP_COUNT

BITMAP_BIT_COUNT

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

BITMAP_OR_AGG

BITMAP_OR___AGG

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

BIT_OR_AGG

BIT_OR_AGG

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

BIT_XOR_AGG

BIT_XOR_AGG

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

CARDINALITY

*定義される

CAST

<p>CAST</p><p>TO_DATE</p><p>TO_NUMBER</p><p>TO_TIMESTAMP</p><p>非対応</p>

関数は、サポートされていない次のステートメントのいずれかが付属している場合、stub _ 'CAST_STUB' _ に変換され、エラーを出力します: _ 'DEFAULT ON CONVERSION ERROR' _ または _ 'MULTISET' _。また、 データ型 がサポートされていない場合は、stubに変換され、 エラー を出力します。キャストする式が _ 数値 _ 型の場合、関数は _ 「TO_NUMBER」 _ 関数に変換され、明示的なキャストが実行できないことを示す エラー を出力します。キャストする式が _ 日付 _ 型の場合、関数は _ 「TO_DATE」 _ 関数に変換され、明示的なキャストが実行できないことを示す エラー を出力します。キャストする式が _ タイムスタンプ _ 型の場合、関数は _ 「TO_TIMESTAMP」 _ 関数に変換され、明示的なキャストが実行できないことを示すエラーを出力します。

CEIL

CEIL

CHARTOROWID

*定義される

CHECKSUM

*定義される

CHR

CHR

_ USING NCHAR_CS _ ステートメントはSnowflake関数の等価物ではサポートされていません。句は削除されます。

CLUSTER_DETAILS

*定義される

CLUSTER_DISTANCE

*定義される

CLUSTER_ID

*定義される

CLUSTER_PROBABILITY

*定義される

CLUSTER_SET

*定義される

COALESCE

COALESCE

COLLATION

COLLATION

COLLECT

*定義される

COMPOSE

*定義される

CON_DBID_TO_ID

*定義される

CON_GUID_TO_ID

*定義される

CON_NAME_TO_ID

*定義される

CON_UID_TO_ID

*定義される

CONCAT

CONCAT

すべての式パラメーターは、 _ NVL(expr, ' ') _ 関数の中に記述され、いずれかの式がnullの場合のエラーを回避します。

CONVERT

*定義される

CORR

CORR

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

CORR_S

*定義される

CORR_K

*定義される

COS

COS

COSH

COSH

COUNT

COUNT

COVAR_POP

COVAR_POP

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

COVAR_SAMP

COVAR_SAMP

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

CUBE_TABLE

サポート対象外

stub _ 「CUBE_TABLE_STUB」 _ に変換され、 エラー が追加されます。

CUME_DIST

CUME_DIST

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

CURRENT_DATE

CURRENT_DATE

CURRENT_TIMESTAMP

CURRENT_TIMESTAMP

CV

*定義される

DATAOBJ_TO_MAT_PARTITION

*定義される

DATAOBJ_TO_PARTITION

*定義される

DBTIMEZONE

*定義される

DECODE

DECODE

DECOMPOSE

*定義される

DENSE_RANK

DENSE_RANK

構文には、 _ 集計構文 _ と _ 分析構文 _ の2種類があります。_ 集計構文 _ はサポートされておらず、 エラー が追加されます。分析構文はサポートされていますが、 _ 「SIBLINGS」 _ キーワードは _ 「order by」 _ _ _ から削除され、 警告 が追加されます。

DEPTH

*定義される

DEREF

*定義される

DUMP

*定義される

EMPTY_BLOB

*定義される

EMPTY_CLOB

*定義される

EXISTSNODE

*定義される

EXP

EXP

EXTRACT (datetime)

<p>EXTRACT (datetime)</p><p>サポートされていません</p>

_ EXTRACT _ 関数として保持されますが、 _ 「MINUTE」 _ または _ 「TIMEZONE_MINUTE」 _ を最初のキーワードパラメーターとして持つ関数の場合、警告を出力します。最初のキーワードパラメーターが _ 「TIMEZOME_REGION」 _ または _ 「TIMEZONE_ABBR」 _ の場合、stub _ 「EXTRACT_STUB」 _ に変換され、 エラー を出力します

EXTRACT (XML)

サポート対象外

XML に関する関数はサポートされていません。stub _ 「EXTRACT୧_STUB」 _ に変換され、エラーが追加されます。XML のロード処理方法については、以下のリンクをご確認ください。

EXTRACTVALUE

サポート対象外

stub _ 「EXTRACTVALUE_STUB」 _ に変換され、 エラー が追加されます。

FEATURE_COMPARE

*定義される

FEATURE_DETAILS

*定義される

FEATURE_ID

*定義される

FEATURE_SET

*定義される

FEATURE_VALUE

*定義される

FIRST

サポート対象外

_ 集計関数 _ の 最初の値 または 最後の値 のみが返されることを示すために使用されるステートメントはサポートされていません。 エラー を出力します。

FIRST_VALUE

FIRST_VALUE

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

FLOOR

FLOOR

FROM_TZ

*定義される

GREATEST

GREATEST

GROUP_ID

*定義される

GROUPING

GROUPING

GROUPING_ID

GROUPING_ID

HEXTORAW

*定義される

INITCAP

INITCAP

INSTR

POSITION

_ 「文字列」 _ パラメーターと _ 「部分文字列」 _ パラメーターの順序は逆です。また、 _「オカレンス」 _ パラメーターはサポートされていないため削除され、 警告 が追加されます。

ITERATION_NUMBER

*定義される

JSON_ARRAY

*定義される

JSON_ARRAYAGG

*定義される

JSON

*定義される

JSON_MERGE_PATCH

*定義される

JSON_OBJECT

*定義される

JSON_OBJECTAGG

*定義される

JSON_QUERY

*定義される

JSON_SCALAR

*定義される

JSON_SERIALIZE

*定義される

JSON_TABLE

サポート対象外

エラーを出力します: _ JSON_TABLE IS NOT SUPPORTED。 _

JSON_TRANSFORM

*定義される

JSON_VALUE

JSON_VALUE_UDF

KURTOSIS_POP

*定義される

KURTOSIS_SAMP

*定義される

LAG

LAG

値式が _ RESPECT | IGNORE NULLS ステートメントと一緒に来る場合、 _ステートメントは、Snowflakeの文法に合わせるために括弧の外に移動されます。

LAST

サポート対象外

_ 集計関数 _ の 最初の値 または 最後の値 のみが返されることを示すために使用されるステートメントはサポートされていません。 エラー を出力します。

LAST_DAY

LAST_DAY

LAST_VALUE

LAST_VALUE

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

LEAD

LEAD

値式が _ RESPECT | IGNORE NULLS ステートメントと一緒に来る場合、 _ステートメントは、Snowflakeの文法に合わせるために括弧の外に移動されます。

LEAST

LEAST

LENGTH

LENGTH

LISTAGG

LISTAGG

_ オーバーフロー句 _ は関数から削除されます。

LN

LN

LNNVL

*定義される

LOCALTIMESTAMP

LOCALTIMESTAMP

LOG

LOG

LOWER

LOWER

LPAD

LPAD

LTRIM

LTRIM

MAKE_REF

*定義される

MAX

MAX

MEDIAN

MEDIAN

MIN

MIN

MOD

MOD

MONTHS_BETWEEN

MONTHS_BETWEEN_UDF

_ ユーザー定義関数 _ に変換されます。

NANVL

*定義される

NCHR

*定義される

NEW_TIME

*定義される

NEXT_DAY

NEXT_DAY

NLS_CHARSET_DESCL_LEN

*定義される

NLS_CHARSET_ID

*定義される

NLS_CHARSET_NAME

*定義される

NLS_COLLATION_ID

*定義される

NLS_COLLATION_NAME

*定義される

NLS_INITCAP

*定義される

NLS_LOWER

*定義される

NLS_UPPER

*定義される

NLSSORT

<p>COLLATE</p><p>サポートされていません</p>

関数が _ 'where' _ または _ 「order by」 _ 句の外側にある場合、その関数はサポートされず、stub _ 'NLSSORT୧_STUB' _ に変換され、 エラー が追加されます。そうでない場合、 _ 'where' _ または _ 'order by' _ 句の中に関数がある場合、 _ COLLATE _ 関数に変換されます。

NTH_VALUE

NTH_VALUE

NTILE

NTILE

NULLIF

NULLIF

NUMTODSINTERVAL

サポート対象外

関数自体はサポートされていませんが、一部の使用は手動で移行することができます。例えば、 DATEADD を使用して、日付/タイムスタンプとこの関数の間の合計を手動で移行することができます。

NUMTOYMINTERVAL

サポート対象外

関数自体はサポートされていませんが、一部の使用は手動で移行することができます。例えば、 DATEADD を使用して、日付/タイムスタンプとこの関数の間の合計を手動で移行することができます。

NVL

NVL

NVL2

NVL2

ORA_DM_PARTITION_NAME

*定義される

ORA_DST_AFFECTED

*定義される

ORA_DST_CONVERTED

*定義される

ORA_DST_ERROR

*定義される

ORA_HASH

サポート対象外

stub _ 「ORA_HASH_STUB」 _ に変換され、 エラー が追加されます。

PATH

*定義される

PERCENT_RANK

PERCENT_RANK

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

PERCENTILE_CONT

PERCENTILE_CONT

PERCENTILE_DISC

PERCENTILE_DISC

POWER

POWER

POWERMULTISET

*定義される

POWERMULTISET_BY_CARDINALITY

*定義される

PREDICTION

*定義される

PREDICTION_BOUNDS

*定義される

PREDICTION_COST

*定義される

PREDICTION_DETAILS

*定義される

PREDICTION_PROBABILITY

*定義される

PREDICTION_SET

*定義される

PRESENTNNV

*定義される

PRESENTV

*定義される

PREVIOUS

*定義される

RANK

RANK

構文には、 _ 集計構文 _ と _ 分析構文 _ の2種類があります。_ 集計構文 _ はサポートされておらず、 エラー が追加されます。分析構文はサポートされていますが、 _ 「SIBLINGS」 _ キーワードは _ 「order by」 _ _ _ から削除され、 警告 が追加されます。

RATIO_TO_REPORT

RATIO_TO_REPORT

RAWTOHEX

*定義される

RAWTONHEX

*定義される

REF

*定義される

REFTOHEX

*定義される

REGEXP_COUNT

REGEXP_COUNT

REGEXP_INSTR

REGEXP_INSTR

REGEXP_REPLACE

REGEXP_REPLACE

<p>< em>replace_string</em> パラメーター(3つ目)には、もう1つのパラメーターをエスケープするために「"」記号が追加されています。<em>match_param</em> パラメーター(最後のパラメーター)では、等価性は次のように機能します。<br>'c' -> 'c' <em>大文字と小文字を区別することを指定します</em><br>'i' -> 'i' <em>大文字と小文字を区別しないことを指定します</em><br>'n' -> 's' <em>任意の文字に一致する文字であるピリオド(.)が改行文字と一致することを可能にします</em><br>'m' -> 'm' <em>ソース文字列を複数行として扱います</em><br>'x' -> 'e' <em>空白文字を無視します</em></p>

REGEXP_SUBSTR

REGEXP_SUBSTR

<p>< em>replace_string</em> パラメーター(2つ目)には、もう1つのパラメーターをエスケープするために「"」記号が追加されています。<em>match_param</em> パラメーターでは、等価性は次のように機能します。<br>'c' -> 'c' <em>大文字と小文字を区別することを指定します</em><br>'i' -> 'i' <em>大文字と小文字を区別しないことを指定します</em><br>'n' -> 's' <em>任意の文字に一致する文字であるピリオド(.)が改行文字と一致することを可能にします</em><br>'m' -> 'm' <em>ソース文字列を複数行として扱います</em><br>'x' -> 'e' <em>空白文字を無視します</em></p>

REGR

REGR

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

REMAINDER

*定義される

REPLACE

REPLACE

REVERSE

REVERSE

ROUND

ROUND

ROUND_TIES_TO_EVEN

*定義される

ROW_NUMBER

ROW_NUMBER

RPAD

RPAD

ROWIDTOCHAR

*定義される

ROWIDTONCHAR

*定義される

RTRIM

RTRIM

SCN_TO_TIMESTAMP

*定義される

SESSIONTIMEZONE

*定義される

SET

*定義される

SIGN

SIGN

SINH

SINH

SKEWNESS_POP

*定義される

SKEWNESS_SAMP

*定義される

SOUNDEX

SOUNDEX

SQRT

SQRT

STANDARD_HASH

*定義される

STATS_BINOMIAL_TEST

*定義される

STATS_CROSSTAB

*定義される

STATS_F_TEST

*定義される

STATS_KS_TEST

*定義される

STATS_MODE

*定義される

STATS_MW_TEST

*定義される

STATS_ONE_WAY_ANOVA

*定義される

STATS_T_TEST

*定義される

STATS_WSR_TEST

*定義される

STDDEV

STDDEV

STDDEV_POP

STDDEV_POP

STDDEV_SAMP

STDDEV_SAMP

SUBSTR

SUBSTR

SUBSTR _ (SUBSTRB、 SUBSTRC、 SUBSTR2、 SUBSTR4) _ のすべてのタイプは、 SUBSTR に変換されます

SUM

SUM

SYS_CONNECT_BY_PATH

*定義される

SYS_CONTEXT

<p>CURRENT_USER CURRENT_SCHEMA CURRENT_DATABASE IS_ROLE_IN_SESSION CURRENT_CLIENT CURRENT_SESSION<br>サポートされていません</p>

<p>関数 SYS_CONTEXT のパラメーターに応じて、指定された関数の1つに変換されます。<br><em>「CURRENT_SCHEMA」</em> は<em>CURRENT_SCHEMA()</em> に変換されます<br><br><em>「CURRENT_USER」</em> は<em>CURRENT_USER()</em> に変換されます<br><br><em>「DB_NAME」</em> は<em>CURRENT_DATABASE()</em> に変換されます<br><br><em>「ISDBA」</em> は<em>IS_ROLE_IN_SESSION(「DBA」)</em> に変換されます<br><br><em>「SERVICE_NAME」</em> は<em>CURRENT_CLIENT()</em> に変換されます<br><br><em>「SESSIONID」</em> は<em>CURRENT_SESSION()</em> に変換されます<br><br><em>「GUEST」</em> は<em>IS_ROLE_IN_SESSION(「GUEST」)</em> に変換されます<br><br><em>「SESSION_USER」</em> は<em>CURRENT_USER()</em> に変換されます<br><br><em>「AUTHENTICATED_IDENTITY」</em> は<em>CURENT_USER()</em></p> に変換されます<p><br>パラメーターがサポートされていない場合はstubに変換されます<em>「SYS_CONTEXT_STUB」</em></p>

SYS_DBURIGEN

*定義される

SYS_EXTRACT_UTC

*定義される

SYS_GUID

*定義される

SYS_OP_ZONE_ID

*定義される

SYS_TYPEID

*定義される

SYS_XMLAGG

*定義される

SYS_XMLGEN

*定義される

TAN

TAN

TANH

TANH

TIMESTAMP_TO_SCN

*定義される

TO_APPROX_COUNT_DISTINCT

*定義される

TO_APPROX_PERCENTILE

*定義される

TO_BINARY_DOUBLE

*定義される

TO_BINARY_FLOAT

*定義される

TO_BLOB (bfile)

*定義される

TO_BLOB (raw)

*定義される

TO_CHAR (character)

TO_CHAR

TO_CHAR (datetime)

<p>TO_CHAR(datetime)条件式(CASE)<br>サポートされていません</p>

形式パラメーターに応じて、関数は 条件式 _ (CASE WHEN) _ または _ ユーザー定義関数 _ に変換されるか、 _ TO_CHAR(datetime) _ として保持されます。同等の結果を得るために、関数が別の関数の間に入ることもあります。関数がサポートされていない場合はstub _ 「TO_୧CHAR୧_STUB」 _ に変換されます。この関数に関する詳しい情報は、To_Char(datetime)をご覧ください。

TO_CHAR (number)

TO_CHAR (number)

_ numeric _ パラメーターのタイプが _ double _ または _ float _ の場合、関数はコメントアウトされ、エラーが追加されます。サポートされていない形式が来ると、 _ format _ パラメーターは関数から取り除かれ、エラーが追加されます。サポートされていない形式: _ C L PR RN TM U V _。関数に _ nlsparam _ パラメーターがある場合、そのパラメーターは関数から削除され、エラーが追加されます。

TO_CLOB ( bfile | blob )

TO_VARCHAR

警告 を出力し、 _ bfile/blob _ パラメーターが _ バイナリ _ と見なされることを示します。また、関数に複数のパラメーターがある場合は、 エラー を出力します。

TO_CLOB (character)

TO_VARCHAR

警告 を出力し、 _ bfile/blob _ パラメーターが _ バイナリ _ と見なされることを示します。また、関数に複数のパラメーターがある場合は、 エラー を出力します。

TO_DATE

TO_DATE

<p>サポートされていない<em>形式</em> が来ると、関数はコメントアウトされ、エラーが追加されます。サポートされていない形式: <em>FXFMDD-MON-YYYY</em><br><em>J</em><br><em>DDD</em><br><em>MONTH</em><br><em>RM</em><br><em>DD-MON-RR</em><br><em>DD-MON-RRRR</em><br><em>SSSSS</em><br><em>YYYY</em><br><em>YYY</em><br><em>Y</em></p>

TO_DSINTERVAL

*定義される

TO_LOB

*定義される

TO_MULTI_BYTE

*定義される

TO_NCHAR

*定義される

TO_NCHAR (datetime)

*定義される

TO_NCLOB

*定義される

TO_NUMBER

<p>TO_NUMBER</p><p>サポートされていません</p>

<p>「<em>DEFAULT integer ON CONVERSION ERROR」</em> ステートメントは削除され、エラーを出力します。</p><p>stubに変換され、<em>TO_NUMBER_STUB</em><em>「format」</em> パラメーターがサポートされていない場合、および関数に<em>「nlsparam」</em> パラメーターがある場合にエラーが追加されます。</p>

TO_SINGLE_BYTE

*定義される

TO_TIMESTAMP

TO_DATE

<p>サポートされていない<em>形式</em> が来ると、関数はコメントアウトされ、エラーが追加されます。サポートされていない形式: <em>FXFMDD-MON-YYYY</em><br><em>J</em><br><em>DDD</em><br><em>MONTH</em><br><em>RM</em><br><em>DD-MON-RR</em><br><em>DD-MON-RRRR</em><br><em>SSSSS</em><br><em>YYYY</em><br><em>YYY</em><br><em>Y</em></p>

TO_TIMESTAMP_TZ

TO_DATE

<p>サポートされていない<em>形式</em> が来ると、関数はコメントアウトされ、エラーが追加されます。サポートされていない形式: <em>FXFMDD-MON-YYYY</em><br><em>J</em><br><em>DDD</em><br><em>MONTH</em><br><em>RM</em><br><em>DD-MON-RR</em><br><em>DD-MON-RRRR</em><br><em>SSSSS</em><br><em>YYYY</em><br><em>YYY</em><br><em>Y</em></p>

TO_UTC_TIMESTAMP_TZ

*定義される

TO_YMINTERVAL

*定義される

TRANSLATE

TRANSLATE

TRANSLATE_USING

TRANSLATE_USING

TREAT

*定義される

TRIM

TRIM

LTRIM

RTRIM

<p>最初のパラメーターによって、次のように変換されます。<br><em>LEADING</em> キーワード -> <em>LTRIM TRAILING</em> キーワード -> <em>RTRIM BOTH</em> キーワード -> <em>TRIM</em><br>これらのキーワードのいずれもなし -> TRIM 関数として保持。また、<em>「trimsource」</em> パラメーターと「trimcharacter」パラメーターの順序が逆になり、<em>FROM</em> キーワードが関数から削除されます。</p>

TRUNC (date)

TRUNC(date)

_「DAY」 _ 式が関数の2番目のパラメーターとして追加されます。

TRUNC (number)

TRUNC(number)

TZ_OFFSET

*定義される

UID

*定義される

UNISTR

TO_VARCHAR(expr)

_ expr _ パラメーターでは、すべての 「\」 記号の後に 'u' 文字が追加されます。

UPPER

UPPER

USER

*定義される

USERNV

*定義される

VALIDATE_CONVERSION

*定義される

VALUE

サポート対象外

stub _ 「VALUE_STUB」 _ に変換され、 エラー が追加されます。

VAR_POP

VAR_POP

VAR_SAMP

VAR_SAMP

VARIANCE

VARIANCE

Snowflakeと機能的に同等ではない可能性があることを示す警告が追加されています。

VSIZE

*定義される

WIDTH_BUCKET

WIDTH_BUCKET

XMLAGG

*定義される

XMLCAST

*定義される

XMLCDATA

*定義される

XMLCOLATVAL

*定義される

XMLCOMMENT

*定義される

XMLCONCAT

*定義される

XMLDIFF

*定義される

XMLELEMENT

*定義される

XMLEXISTS

*定義される

XMLFOREST

*定義される

XMLISVALID

*定義される

XMLPARSE

*定義される

XMLPATCH

*定義される

XMLPI

*定義される

XMLQUERY

サポート対象外

XMLSEQUENCE

サポート対象外

stub _ 「XMLSEQUENCE_STUB」 _ に変換され、 エラー が追加されます。

XMLSERIALIZE

*定義される

XMLTABLE

サポート対象外

エラーを出力します: _ XMLTABLE IS NOT SUPPORTED _。

XMLTRANSFORM

*定義される

関数の詳細。

To_Char(datetime)

形式パラメーターによって、関数は次のように変換されます。

形式

変換

<p>AD または BC</p><p>A.D.またはB.C.</p>

<p>関数は、<em>条件式</em> に変換されます<em>(CASE)</em><br><em>'when'</em> 条件の結果として形式が追加されます。<br>例:<br><code>from: To_Char(DATE '1998-12-25', 'AD')</code><br><code>to: CASE WHEN YEAR(DATE '1998-12-25') &#x3C; 0 THEN</code><code>'BC'</code></p>

CC または SCC

<p>関数は<em>条件式</em> に変換されます。<br>元の関数本体は<em>when</em> 条件として追加されますが、</p><p><em>MOD</em> 関数の間になります。その後、元の関数は<em>then</em> 結果として追加されますが<br><em>SUBSTR</em> 関数に含まれます。<br>例:</p><p><code>from: To_Char(DATE '1998-12-25','CC')</code><br><code>to: CASE WHEN MOD(YEAR(DATE '1998-12-25'), 100) = 0</code><br><code>THEN SUBSTR(TO_CHAR(DATE '1998-12-25', 'YYYY'), 1, 2)</code></p>

D

<p>関数は同等のSnowflake関数に変換されますが、<br>関数本文は<em>DAYOFWEEK</em> datetime 部分の間になります。</p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','D')</code></p><p><code>to: TO_CHAR(DAYOFWEEK(DATE '1998-12-25') + 1)</code></p>

DAY

<p>関数は、<em>UPPER</em><br>関数内の<em>ユーザー定義関数</em> に変換されます。<br>例:<br><code>from: To_Char(DATE '1998-12-25','DAY')</code></p><p><code>to: UPPER(SNOWCONVERT.PUBLIC.FULL_DAY_NAME_UDF(DATE '1998-12-25'))</code></p>

DDD

<p>関数は同等のSnowflake関数に変換されますが、<br>関数本文は<em>DAYOFYEAR</em> datetime 部分の間になります。</p><p>例:<br><code>from: To_Char(DATE '1998-12-25','DDD')</code></p><p><code>to: TO_CHAR(DAYOFYEAR(DATE '1998-12-25'))</code></p>

DD-MON-RR

<p>関数は、</p><p>関数本文は保持されますが、形式が次のように変更され、Snowflake関数と同等の関数に変換されます。<em>'DD-MON-YY'.</em></p><p>例:</p><p><code>from: To_Char(TIMESTAMP '1998-12-25 09:26:50.12','DD-MON-RR')</code></p><p><code>to: To_Char(TIMESTAMP '1998-12-25 09:26:50.12','DD-MON-YY')</code></p>

DL

<p>関数は、<em>ユーザー定義関数</em> と<em>'OR'</em> 演算子<br>および同等のSnowflake演算子に変換されます。関数本文は保持されますが、形式は次のように変更されます。</p><p><em>', MMM DD, YYYY</em></p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','DL')</code></p><p><code>to: SNOWCONVERT.PUBLIC.FULL_DAY_NAME_UDF(DATE '1998-12-25')</code></p>

DS

<p>関数は、</p><p><em>LTRIM</em> 関数内の同等のSnowflake関数と同等のSnowflake関数の組み合わせに変換されます。</p><p>すべての部分は<em>'OR'</em> 演算子で結合されます。</p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','DS')</code></p><p><code>to: LTRIM(TO_CHAR(DATE '1998-12-25', 'MM'), '0')</code></p>

DY

<p>関数は、</p><p><em>UPPER</em> 関数内で同等のSnowflake関数に変換されます。</p><p>例:<br><code>from: To_Char(DATE '1998-12-25','DY')</code><br><code>to: UPPER(TO_CHAR(DATE '1998-12-25', 'DY'))</code></p>

I

<p>関数は、</p><p><em>SUBSTR</em> 関数内で同等のSnowflake関数に変換されます。</p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','I')</code></p><p><code>to: SUBSTR(TO_CHAR(DATE '1998-12-25', 'YYYY'), 4, 1)</code></p>

IW

<p>関数は同等のSnowflake関数に変換されますが、<br>関数本文は<em>WEEKISO</em> datetime 部分の間になります。</p><p>例:</p><p><code>from:To_Char(DATE '1998-12-25','IW')</code></p><p><code>to: TO_CHAR(WEEKISO(DATE '1998-12-25'))</code></p>

IY

<p>関数は、</p><p>関数本体は保持されますが、形式が次のように変更され、Snowflake関数と同等の関数に変換されます。<em>'YY'.</em></p><p>例:</p><p><code>from:To_Char(DATE '1998-12-25', 'IY')</code></p><p><code>to: TO_CHAR(DATE '1998-12-25', 'YY')</code></p>

IYY

<p>関数は、</p><p><em>SUBSTR</em> 関数内で同等のSnowflake関数に変換され、形式が次のように変更されます。<em>'YYYY'</em>.</p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','IYY')</code></p><p><code>to: SUBSTR(TO_CHAR(DATE '1998-12-25', 'YYYY'), 2, 3)</code></p>

IYYY

<p>関数は、</p><p>関数本体は保持されますが、形式が次のように変更され、Snowflake関数と同等の関数に変換されます。<em>'YYYY'.</em></p><p>例:</p><p><code>from:To_Char(DATE '1998-12-25', 'IYYY')</code></p><p><code>to: TO_CHAR(DATE '1998-12-25', 'YYYY')</code></p>

J

<p>関数は、「B.C.」を<em>「then」</em></p><p>結果として、<em>「A.D.</em>」をelse結果として持つ条件式に変換されます。</p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','J')</code></p><p><code>to:</code> DATE_TO_JULIANDAYS_UDF(DATE '1998-12-25')</p>

MI

<p>関数はSnowflakeの同等のものに変換されます。関数の</p><p>引数が<em>SYSDATE</em> の場合は<em>CURRENT_TIMESTAMP</em> に変換されます。それ以外の場合、</p><p>つまり日付型の場合は、関数はnullを返します。</p><p>例:</p><p><code>from: To_Char(SYSDATE,'MI');</code></p><p><code>to: To_Char(CURRENT_TIMESTAMP,'MI')</code></p>

MON

<p>関数は、<br><em>UPPER</em> 関数内で同等のSnowflake関数に変換されます。</p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','MON')</code></p><p><code>to: UPPER(TO_CHAR(DATE '1998-12-25', 'MON'))</code></p>

MONTH

<p>関数は、</p><p><em>UPPER</em> 関数内で同等のSnowflake関数に変換され、形式が次のように変更されます。<em>'MMMM'</em>.</p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','MONTH')</code></p><p><code>to: UPPER(TO_CHAR(DATE '1998-12-25', 'MMMM'))</code></p>

Q

<p>関数は、<br><em>QUARTER</em> 関数内で同等のSnowflake関数に変換されます。</p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','Q')</code></p><p><code>to: TO_CHAR(QUARTER(DATE '1998-12-25'))</code></p>

RM

<p>関数は、<em>ユーザー定義関数</em> に変換されます。</p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','RM')</code></p><p><code>to: SNOWCONVERT.PUBLIC.ROMAN_MONTH_UDF(DATE '1998-12-25')</code></p>

RR

<p>関数は、</p><p>関数本文は保持されますが、形式が次のように変更され、Snowflake関数と同等の関数に変換されます。<em>'YY'.</em></p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','RR')</code></p><p><code>to: TO_CHAR(DATE '1998-12-25', 'YY')</code></p>

RR-MON-DD

<p>関数は、</p><p>関数本文は保持されますが、形式が次のように変更され、Snowflake関数と同等の関数に変換されます。<em>'YY-MON-DD'.</em></p><p>例:</p><p><code>from: To_Char(TIMESTAMP '1998-12-25 09:26:50.12','RR-MON-DD')</code></p><p><code>to: To_Char(TIMESTAMP '1998-12-25 09:26:50.12','YY-MON-DD')</code></p>

RRRR

<p>関数は、</p><p>関数本文は保持されますが、形式が次のように変更され、Snowflake関数と同等の関数に変換されます。<em>'YYYY'.</em></p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','RRRR')</code></p><p><code>to: TO_CHAR(DATE '1998-12-25', 'YYYY')</code></p>

SS

<p>関数は、<em>条件式</em><br>と同等のSnoeflake関数の組み合わせに変換されます。</p><p>すべての部分は、<em>'OR'</em> 演算子で結合されます。<br>例:<br><code>from: To_Char(TIMESTAMP '1998-12-25 09:26:50.12','SS')</code></p><p><code>to: CASE WHEN SECOND(TIMESTAMP '1998-12-25 09:26:50.12') = 0</code><br><code>THEN '00' WHEN SECOND(TIMESTAMP '1998-12-25 09:26:50.12') &#x3C; 10</code><br><code>THEN '0'</code></p>

SSSS

<p>この関数は同等のSnowflake関数に変換されますが、</p><p>関数本文は<em>SECOND</em>、<em>MINUTE、</em> および <em>HOUR</em> の日付時刻部分の連結になります。</p><p>例:</p><p><code>from: To_Char(TIMESTAMP '1998-12-25 09:26:50.12','SSSS')</code></p><p><code>to: TO_CHAR(SECOND(TIMESTAMP '1998-12-25 09:26:50.12') +</code><br><code>MINUTE(TIMESTAMP '1998-12-25 09:26:50.12') * 60 +</code><br><code>HOUR(TIMESTAMP '1998-12-25 09:26:50.12') * 3600)</code></p>

TS

<p>関数は、</p><p>関数本文は保持されますが、形式が次のように変更され、Snowflake関数と同等の関数に変換されます。<em>'HH:MI:SS PM'.</em></p><p>例:</p><p><code>from: To_Char(TIMESTAMP '1998-12-25 09:26:50.12','TS')</code></p><p><code>to: TO_CHAR(TIMESTAMP '1998-12-25 09:26:50.12', 'HH:MI:SS PM')</code></p>

W

<p>関数は、<em>DAYOFMONTH</em><br>日付時刻部分を含む<em>TRUNC</em> 関数に変換されます。</p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','W')</code></p><p><code>to: TRUNC(DAYOFMONTH(DATE '1998-12-25') / 7 + 1)</code></p>

WW

<p>関数は、<em>DAYOFYEAR</em><br>日付時刻部分を含む<em>TRUNC</em> 関数に変換されます。</p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','WW')</code></p><p><code>to: TRUNC(DAYOFYEAR(DATE '1998-12-25') / 7 + 1)</code></p>

Y

YYY

<p>関数は、</p><p><em>SUBSTR</em> 関数内で同等のSnowflake関数に変換され、形式が次のように変更されます。<em>'YYYY'</em>.</p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','Y')</code></p><p><code>to: SUBSTR(TO_CHAR(DATE '1998-12-25', 'YYYY'), 4, 1)</code></p>

Y,YYY

<p>関数は、<br>SUBSTR 関数内の同等のSnowflake関数とコンマ記号の組み合わせに変換されます。<br>すべての部分は、<em>'OR'</em> 演算子で結合されます。</p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','Y,YYY')</code></p><p><code>to: SUBSTR(TO_CHAR(YEAR(DATE '1998-12-25')), 1, 1)</code></p>

YEAR

SYEAR

<p>関数は、<em>UPPER</em><br>関数内の<em>ユーザー定義関数</em> に変換されます。</p><p>例:</p><p><code>from: To_Char(DATE '1998-12-25','YEAR')</code></p><p><code>to: UPPER(SNOWCONVERT.PUBLIC.YEAR_NAME_UDF(DATE '1998-12-25'))</code></p>

NLSSORT

説明

NLSSORT は、文字値charと明示的または暗黙的に指定された照合の照合キーを返します。照合キーは、指定された照合に従ってcharをソートするために使用されるバイト文字列です。照合キーのプロパティは、与えられた照合のために生成された2つのキーのバイナリ順序に従って比較したときの相互の順序付けが、与えられた照合に従って比較したときのソース文字値の相互の順序付けと同じであるということです。(Oracleの NLSSORT)。

サンプルソースパターン

構文

NLSSORT(char [, 'nlsparam' ])

Copy

Snowflake SQL ドキュメント

COLLATE(<string_expression>, '<collation_specification>')

Copy

コード:

CREATE TABLE test (name VARCHAR2(15));
INSERT INTO test VALUES ('Gaardiner');
INSERT INTO test VALUES ('Gaberd');
INSERT INTO test VALUES ('Gaasten');

SELECT *
  FROM test
  ORDER BY NLSSORT(name, 'NLS_SORT = XDanish');
Copy

結果:

:force:
NAME            
-------
Gaberd        
Gaardiner
Gaasten     

Copy

コード:

 CREATE OR REPLACE TABLE test (name VARCHAR(15))
COMMENT = '{"origin":"sf_sc","name":"snowconvert","version":{"major":1, "minor":0},{"attributes":{"component":"oracle"}}'
;

INSERT INTO test
VALUES ('Gaardiner');

INSERT INTO test
VALUES ('Gaberd');

INSERT INTO test
VALUES ('Gaasten');

SELECT *
  FROM
  test
ORDER BY
COLLATE(name, '');
Copy

結果:

NAME            
-------
Gaberd        
Gaardiner
Gaasten
Copy

TO_NUMBER

説明

入力式を固定小数点数に変換します。 NULL 入力の場合、出力は NULLです。

引数

必須:

<expr>

数値、文字、またはバリアント型の式です。

オプション:

<format>

入力 _ _ を解析して返すために使用される SQL 形式モデル。詳細情報については、 SQL 形式モデル をご覧ください。

<precision>

1から38までの、結果の数値の10進数の最大数です。Snowflakeでは、精度を使用して、数値を保存するために必要なバイト数の決定が行われず、効率に影響しないため、デフォルトは最大(38)です。

<scale>

小数の桁数です(0から _ 精度_ -1まで)。0は、小数桁がないこと(つまり、整数)を示します。デフォルトのスケールは0です。

戻り値

関数は NUMBER(_ 精度_ 、`` _ スケール_ を返します。

  • _ 精度_ が指定されていない場合、デフォルトは38になります。

  • _ スケール_ が指定されていない場合、デフォルトは0になります。

詳細はSnowflakeドキュメントの TO_NUMBER をご参照ください。

SELECT CAST('123,456E+40' AS NUMBER, '999,999EEE') FROM DUAL;
SELECT CAST('12sdsd3,456E+40' AS NUMBER, '999,999EEE') FROM DUAL;
SELECT CAST('12345sdsd' AS NUMBER, '99999') FROM DUAL;
SELECT CAST('12.345678912345678912345678912345678912' AS NUMBER, '99.999999999999999999999999999999999999') FROM DUAL;
SELECT CAST('               12.345678912345678912345678912345678912' AS NUMBER, '99.999999999999999999999999999999999999') FROM DUAL;
SELECT CAST('               -12.345678912345678912345678912345678912' AS NUMBER, '99.999999999999999999999999999999999999') FROM DUAL;
SELECT CAST('12.34567891234567891234567891234567891267' AS NUMBER, '99.999999999999999999999999999999999999') FROM DUAL;
SELECT CAST('123.456E-40' AS NUMBER, '999.9999EEE') FROM DUAL;
select cast('12,345,678,912,345,678,912,345,678,912,345,678,912' as number, '99,999,999,999,999,999,999,999,999,999,999,999,999') from dual;
SELECT CAST('  123.456E-40' AS NUMBER, '999.9999EEE') FROM DUAL;
select cast('       12,345,678,912,345,678,912,345,678,912,345.678912' as number, '99,999,999,999,999,999,999,999,999,999,999.999999') from dual;

SELECT CAST('12.34567891234567891234567891234567891267+' AS NUMBER, '99.999999999999999999999999999999999999S') FROM DUAL;
select cast('12,345,678,912,345,678,912,345,678,912,345,678,912+' as number, '99,999,999,999,999,999,999,999,999,999,999,999,999S') from dual;

select cast('12.48+' as number, '99.99S') from dual;
select cast('  12.48+' as number, '99.99S') from dual;
select cast('12.48+   ' as number, '99.99S') from dual;

SELECT CAST('123.456+E-2' AS NUMBER, '999.9999SEEE') FROM DUAL;
SELECT CAST('123.456+E-2-' AS NUMBER, '999.9999SEEE') FROM DUAL;

SELECT CAST('12356-' AS NUMBER, '99999S') FROM DUAL;

select cast(' 1.0E+123' as number, '9.9EEEE') from dual;
select cast('1.2E+02' as number, 'FM9.9EEEE') from dual;
select cast('123.45' as number, 'FM999.009') from dual;
select cast('123.00' as number, 'FM999.009') from dual;
select cast(' $123.45' as number, 'L999.99') from dual;
select cast('$123.45' as number, 'FML999.99') from dual;
select cast('1234567890+' as number, '9999999999S') from dual;
Copy
 SELECT
!!!RESOLVE EWI!!! /*** SSC-EWI-OR0050 - INPUT EXPRESSION IS OUT OF THE RANGE '123,456E+40' ***/!!!
 CAST('123,456E+40' AS NUMBER(38, 18) , '999,999EEE') FROM DUAL;

SELECT
 !!!RESOLVE EWI!!! /*** SSC-EWI-OR0053 - INCORRECT INPUT FORMAT '12sdsd3,456E+40' ***/!!! CAST('12sdsd3,456E+40' AS NUMBER(38, 18) , '999,999EEE') FROM DUAL;

SELECT
 !!!RESOLVE EWI!!! /*** SSC-EWI-OR0053 - INCORRECT INPUT FORMAT '12345sdsd' ***/!!! CAST('12345sdsd' AS NUMBER(38, 18) , '99999') FROM DUAL;

SELECT
 TO_NUMBER('12.345678912345678912345678912345678912', '99.999999999999999999999999999999999999', 38, 36)
FROM DUAL;

SELECT
 TO_NUMBER('               12.345678912345678912345678912345678912', '99.999999999999999999999999999999999999', 38, 36)
FROM DUAL;

SELECT
 TO_NUMBER('               -12.345678912345678912345678912345678912', '99.999999999999999999999999999999999999', 38, 36)
FROM DUAL;

SELECT
 !!!RESOLVE EWI!!! /*** SSC-EWI-OR0050 - INPUT EXPRESSION IS OUT OF THE RANGE '12.34567891234567891234567891234567891267' ***/!!! CAST('12.34567891234567891234567891234567891267' AS NUMBER(38, 18) , '99.999999999999999999999999999999999999') FROM DUAL;

SELECT
 TO_NUMBER('123.456E-40', '999.9999EEE', 38, 37)
FROM DUAL;

select
 TO_NUMBER('12,345,678,912,345,678,912,345,678,912,345,678,912', '99,999,999,999,999,999,999,999,999,999,999,999,999', 38, 0)
from dual;

SELECT
 TO_NUMBER('  123.456E-40', '999.9999EEE', 38, 37)
FROM DUAL;

select
 TO_NUMBER('       12,345,678,912,345,678,912,345,678,912,345.678912', '99,999,999,999,999,999,999,999,999,999,999.999999', 38, 6)
from dual;

SELECT
 !!!RESOLVE EWI!!! /*** SSC-EWI-OR0050 - INPUT EXPRESSION IS OUT OF THE RANGE '12.34567891234567891234567891234567891267+' ***/!!! CAST('12.34567891234567891234567891234567891267+' AS NUMBER(38, 18) , '99.999999999999999999999999999999999999S') FROM DUAL;

select
 TO_NUMBER('12,345,678,912,345,678,912,345,678,912,345,678,912+', '99,999,999,999,999,999,999,999,999,999,999,999,999S', 38, 0)
from dual;

select
 TO_NUMBER('12.48+', '99.99S', 38, 2)
from dual;

select
 TO_NUMBER('  12.48+', '99.99S', 38, 2)
from dual;

select
 TO_NUMBER('12.48+   ', '99.99S', 38, 2)
from dual;

SELECT
 TO_NUMBER('123.456+E-2', '999.9999SEEE', 38, 5)
FROM DUAL;

SELECT
 !!!RESOLVE EWI!!! /*** SSC-EWI-OR0053 - INCORRECT INPUT FORMAT '123.456+E-2-' ***/!!! CAST('123.456+E-2-' AS NUMBER(38, 18) , '999.9999SEEE') FROM DUAL;

SELECT
 TO_NUMBER('12356-', '99999S', 38, 0)
FROM DUAL;

select
 !!!RESOLVE EWI!!! /*** SSC-EWI-OR0050 - INPUT EXPRESSION IS OUT OF THE RANGE ' 1.0E+123' ***/!!! cast(' 1.0E+123' as NUMBER(38, 18) , '9.9EEEE') from dual;

select
 TO_NUMBER('1.2E+02', 'FM9.9EEEE', 38, 0)
from dual;

select
 TO_NUMBER('123.45', 'FM999.009', 38, 2)
from dual;

select
 TO_NUMBER('123.00', 'FM999.009', 38, 2)
from dual;

select
 !!!RESOLVE EWI!!! /*** SSC-EWI-OR0045 - CAST TYPE L AND FML NOT SUPPORTED ***/!!! cast(' $123.45' as NUMBER(38, 18) , 'L999.99') from dual;

select
 !!!RESOLVE EWI!!! /*** SSC-EWI-OR0045 - CAST TYPE L AND FML NOT SUPPORTED ***/!!! cast('$123.45' as NUMBER(38, 18) , 'FML999.99') from dual;

select
 TO_NUMBER('1234567890+', '9999999999S', 38, 0)
from dual;
Copy

推奨事項

  • ユーザーによる追加のアクションは必要ありません。

  • さらにサポートが必要な場合は、snowconvert-support@snowflake.comまでメールでお問い合わせください。