doc-exports/docs/dli/sqlreference/dli_08_0336.html
Su, Xiaomeng 04d4597cf3 dli_sqlreference_0511_version
Reviewed-by: Pruthi, Vineet <vineet.pruthi@t-systems.com>
Co-authored-by: Su, Xiaomeng <suxiaomeng1@huawei.com>
Co-committed-by: Su, Xiaomeng <suxiaomeng1@huawei.com>
2023-11-02 14:34:08 +00:00

132 lines
13 KiB
HTML

<a name="dli_08_0336"></a><a name="dli_08_0336"></a>
<h1 class="topictitle1">Type Conversion Function</h1>
<div id="body8662426"><div class="section" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_section9734433122713"><h4 class="sectiontitle">Syntax</h4><pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_screen19396104742710">CAST(value AS type)</pre>
</div>
<div class="section" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_section197791153142712"><h4 class="sectiontitle">Syntax Description</h4><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p125922369169">This function is used to forcibly convert types.</p>
</div>
<div class="section" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_section162182672816"><h4 class="sectiontitle">Precautions</h4><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p16143105171613">If the input is <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b842352706164043">NULL</strong>, <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b842352706164039">NULL</strong> is returned.</p>
</div>
<div class="section" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_section6708122502812"><h4 class="sectiontitle">Example</h4><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_a3e8ecbf3e3934ed1b04601e1689e0518">The following example converts the <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_b48299444315">amount</strong> value to an integer.</p>
<pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_s41c7e3601df241b281c5c3557d53415c">insert into temp select cast(amount as INT) from source_stream;</pre>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_table178184319481" frame="border" border="1" rules="all"><caption><b>Table 1 </b>Examples of type conversion functions</caption><thead align="left"><tr id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_row681919314480"><th align="left" class="cellrowborder" valign="top" width="21.42%" id="mcps1.3.4.4.2.4.1.1"><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p1581993117483">Example</p>
</th>
<th align="left" class="cellrowborder" valign="top" width="40.62%" id="mcps1.3.4.4.2.4.1.2"><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p881943112487">Description</p>
</th>
<th align="left" class="cellrowborder" valign="top" width="37.96%" id="mcps1.3.4.4.2.4.1.3"><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p479454615014">Example</p>
</th>
</tr>
</thead>
<tbody><tr id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_row38191317486"><td class="cellrowborder" valign="top" width="21.42%" headers="mcps1.3.4.4.2.4.1.1 "><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p781913194814">cast(v1 as string)</p>
</td>
<td class="cellrowborder" valign="top" width="40.62%" headers="mcps1.3.4.4.2.4.1.2 "><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p13819531184820">Converts <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b19554840113818">v1</strong> to a string. The value of <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b1494184420383">v1</strong> can be of the numeric type or of the timestamp, date, or time type.</p>
</td>
<td class="cellrowborder" valign="top" width="37.96%" headers="mcps1.3.4.4.2.4.1.3 "><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p395613491194">Table T1:</p>
<pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_screen179216204108">| content (INT) |
| ------------- |
| 5 |</pre>
<p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p79562497911">Statement:</p>
<pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_screen12431554101019">SELECT
cast(content as varchar)
FROM
T1;</pre>
<p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p199573491599">Result:</p>
<pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_screen13419104151112">"5"</pre>
</td>
</tr>
<tr id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_row1917212119502"><td class="cellrowborder" valign="top" width="21.42%" headers="mcps1.3.4.4.2.4.1.1 "><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p12173151185019">cast (v1 as int)</p>
</td>
<td class="cellrowborder" valign="top" width="40.62%" headers="mcps1.3.4.4.2.4.1.2 "><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p4174171105011">Converts <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b117021951203812">v1</strong> to the <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b11494165953810">int</strong> type. The value of <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b158213538380">v1</strong> can be a number or a character.</p>
</td>
<td class="cellrowborder" valign="top" width="37.96%" headers="mcps1.3.4.4.2.4.1.3 "><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p18383418139">Table T1:</p>
<pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_screen116016486135">| content (STRING) |
| ------------- |
| "5" |</pre>
<p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p6323481312">Statement:</p>
<pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_screen65451837201411">SELECT
cast(content as int)
FROM
T1;</pre>
<p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p648345137">Result:</p>
<pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_screen3448717151">5</pre>
</td>
</tr>
<tr id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_row12267712165017"><td class="cellrowborder" valign="top" width="21.42%" headers="mcps1.3.4.4.2.4.1.1 "><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p026851219507">cast(v1 as timestamp)</p>
</td>
<td class="cellrowborder" valign="top" width="40.62%" headers="mcps1.3.4.4.2.4.1.2 "><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p14268512155012">Converts <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b6422131418399">v1</strong> to the <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b777312174399">timestamp</strong> type. The value of <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b214120173916">v1</strong> can be of the <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b129774238399">string</strong>, <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b178652915391">date</strong>, or <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b860113312391">time</strong> type.</p>
</td>
<td class="cellrowborder" valign="top" width="37.96%" headers="mcps1.3.4.4.2.4.1.3 "><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p27431739192212">Table T1:</p>
<pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_screen145085582216">| content (STRING) |
| ------------- |
| "2018-01-01 00:00:01" |</pre>
<p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p117441639182213">Statement:</p>
<pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_screen83883113426">SELECT
cast(content as timestamp)
FROM
T1;</pre>
<p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p5744103922217">Result:</p>
<pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_screen21051924174215">1514736001000</pre>
</td>
</tr>
<tr id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_row77856825316"><td class="cellrowborder" valign="top" width="21.42%" headers="mcps1.3.4.4.2.4.1.1 "><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p157872805310">cast(v1 as date)</p>
</td>
<td class="cellrowborder" valign="top" width="40.62%" headers="mcps1.3.4.4.2.4.1.2 "><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p37879815318">Converts <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b919712478392">v1</strong> to the <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b1458512501395">date</strong> type. The value of <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b8445175423913">v1</strong> can be of the <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b9152125883911">string</strong> or <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b107505004012">timestamp</strong> type.</p>
</td>
<td class="cellrowborder" valign="top" width="37.96%" headers="mcps1.3.4.4.2.4.1.3 "><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p1324241431">Table T1:</p>
<pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_screen86153834318">| content (TIMESTAMP) |
| ------------- |
| 1514736001000 |</pre>
<p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p232454104310">Statement:</p>
<pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_screen10337163214457">SELECT
cast(content as date)
FROM
T1;</pre>
<p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p5324144164318">Result:</p>
<pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_screen54891750134716">"2018-01-01"</pre>
</td>
</tr>
</tbody>
</table>
</div>
<div class="note" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_note035781042910"><img src="public_sys-resources/note_3.0-en-us.png"><span class="notetitle"> </span><div class="notebody"><p id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_p43681310162918">Flink jobs do not support the conversion of <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b18885142215407">bigint</strong> to <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b1271073754011">timestamp</strong> using CAST. You can convert it using <strong id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_b1319871384117">to_timestamp</strong>.</p>
</div></div>
</div>
<div class="section" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_section14655163113329"><h4 class="sectiontitle">Detailed Sample Code</h4><pre class="screen" id="dli_08_0336__en-us_topic_0000001119232096_en-us_topic_0000001081259526_dli_08_0112_screen1970373145019">/** source **/
CREATE
TABLE car_infos (cast_int_to_string int, cast_String_to_int string,
case_string_to_timestamp string, case_timestamp_to_date timestamp(3)) WITH (
'connector.type' = 'dis',
'connector.region' = 'xxxxx',
'connector.channel' = 'dis-input',
'format.type' = 'json'
);
/** sink **/
CREATE
TABLE cars_infos_out (cast_int_to_string string, cast_String_to_int
int, case_string_to_timestamp timestamp(3), case_timestamp_to_date date) WITH (
'connector.type' = 'dis',
'connector.region' = 'xxxxx',
'connector.channel' = 'dis-output',
'format.type' = 'json'
);
/** Statistics on static car information**/
INSERT
INTO
cars_infos_out
SELECT
cast(cast_int_to_string as string),
cast(cast_String_to_int as int),
cast(case_string_to_timestamp as timestamp),
cast(case_timestamp_to_date as date)
FROM
car_infos;</pre>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="dli_08_0331.html">Built-In Functions</a></div>
</div>
</div>