| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| Licensed to the Apache Software Foundation (ASF) under one |
| or more contributor license agreements. See the NOTICE file |
| distributed with this work for additional information |
| regarding copyright ownership. The ASF licenses this file |
| to you under the Apache License, Version 2.0 (the |
| "License"); you may not use this file except in compliance |
| with the License. You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, |
| software distributed under the License is distributed on an |
| "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| KIND, either express or implied. See the License for the |
| specific language governing permissions and limitations |
| under the License. |
| --> |
| <!DOCTYPE concept PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd"> |
| <concept id="smallint"> |
| |
| <title>SMALLINT Data Type</title> |
| <titlealts audience="PDF"><navtitle>SMALLINT</navtitle></titlealts> |
| <prolog> |
| <metadata> |
| <data name="Category" value="Impala"/> |
| <data name="Category" value="Impala Data Types"/> |
| <data name="Category" value="SQL"/> |
| <data name="Category" value="Data Analysts"/> |
| <data name="Category" value="Developers"/> |
| <data name="Category" value="Schemas"/> |
| </metadata> |
| </prolog> |
| |
| <conbody> |
| |
| <p> |
| A 2-byte integer data type used in <codeph>CREATE TABLE</codeph> and <codeph>ALTER TABLE</codeph> statements. |
| </p> |
| |
| <p conref="../shared/impala_common.xml#common/syntax_blurb"/> |
| |
| <p> |
| In the column definition of a <codeph>CREATE TABLE</codeph> statement: |
| </p> |
| |
| <codeblock><varname>column_name</varname> SMALLINT</codeblock> |
| |
| <p> |
| <b>Range:</b> -32768 .. 32767. There is no <codeph>UNSIGNED</codeph> subtype. |
| </p> |
| |
| <p> |
| <b>Conversions:</b> Impala automatically converts to a larger integer type (<codeph>INT</codeph> or |
| <codeph>BIGINT</codeph>) or a floating-point type (<codeph>FLOAT</codeph> or <codeph>DOUBLE</codeph>) |
| automatically. Use <codeph>CAST()</codeph> to convert to <codeph>TINYINT</codeph>, <codeph>STRING</codeph>, |
| or <codeph>TIMESTAMP</codeph>. |
| <ph conref="../shared/impala_common.xml#common/cast_int_to_timestamp"/> |
| </p> |
| |
| <p conref="../shared/impala_common.xml#common/usage_notes_blurb"/> |
| |
| <p> |
| For a convenient and automated way to check the bounds of the <codeph>SMALLINT</codeph> type, call the |
| functions <codeph>MIN_SMALLINT()</codeph> and <codeph>MAX_SMALLINT()</codeph>. |
| </p> |
| |
| <p> |
| If an integer value is too large to be represented as a <codeph>SMALLINT</codeph>, use an |
| <codeph>INT</codeph> instead. |
| </p> |
| |
| <p conref="../shared/impala_common.xml#common/null_bad_numeric_cast"/> |
| |
| <p conref="../shared/impala_common.xml#common/example_blurb"/> |
| |
| <codeblock>CREATE TABLE t1 (x SMALLINT); |
| SELECT CAST(1000 AS SMALLINT); |
| </codeblock> |
| |
| <p conref="../shared/impala_common.xml#common/parquet_blurb"/> |
| |
| <!-- Duplicated under TINYINT and SMALLINT. Turn into a conref in both places. --> |
| |
| <p rev="1.4.0"> |
| Physically, Parquet files represent <codeph>TINYINT</codeph> and <codeph>SMALLINT</codeph> values as 32-bit |
| integers. Although Impala rejects attempts to insert out-of-range values into such columns, if you create a |
| new table with the <codeph>CREATE TABLE ... LIKE PARQUET</codeph> syntax, any <codeph>TINYINT</codeph> or |
| <codeph>SMALLINT</codeph> columns in the original table turn into <codeph>INT</codeph> columns in the new |
| table. |
| </p> |
| |
| <p conref="../shared/impala_common.xml#common/partitioning_good"/> |
| |
| <p conref="../shared/impala_common.xml#common/hbase_ok"/> |
| |
| <p conref="../shared/impala_common.xml#common/text_bulky"/> |
| |
| <!-- <p conref="../shared/impala_common.xml#common/compatibility_blurb"/> --> |
| |
| <p conref="../shared/impala_common.xml#common/internals_2_bytes"/> |
| |
| <p conref="../shared/impala_common.xml#common/added_forever"/> |
| |
| <p conref="../shared/impala_common.xml#common/column_stats_constant"/> |
| |
| <!-- <p conref="../shared/impala_common.xml#common/restrictions_blurb"/> --> |
| |
| <p conref="../shared/impala_common.xml#common/related_info"/> |
| |
| <p> |
| <xref href="impala_literals.xml#numeric_literals"/>, <xref href="impala_tinyint.xml#tinyint"/>, |
| <xref href="impala_smallint.xml#smallint"/>, <xref href="impala_int.xml#int"/>, |
| <xref href="impala_bigint.xml#bigint"/>, <xref href="impala_decimal.xml#decimal"/>, |
| <xref href="impala_math_functions.xml#math_functions"/> |
| </p> |
| </conbody> |
| </concept> |