mirror of
https://github.com/apache/impala.git
synced 2025-12-19 09:58:28 -05:00
Added information in the "DOUBLE Data Type" (impala_double.html) and the "FLOAT Data Type" (impala_float.html) topics about how Impala handles NaN values. Change-Id: Id9485b6790d58fafdae32332d2634cbe893d7fb0 Reviewed-on: http://gerrit.cloudera.org:8080/7098 Reviewed-by: Michael Brown <mikeb@cloudera.com> Tested-by: Impala Public Jenkins
129 lines
4.7 KiB
XML
129 lines
4.7 KiB
XML
<?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="double">
|
|
|
|
<title>DOUBLE Data Type</title>
|
|
<titlealts audience="PDF"><navtitle>DOUBLE</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 double precision floating-point 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> DOUBLE</codeblock>
|
|
|
|
<p>
|
|
<b>Range:</b> 4.94065645841246544e-324d .. 1.79769313486231570e+308, positive or negative
|
|
</p>
|
|
|
|
<p>
|
|
<b>Precision:</b> 15 to 17 significant digits, depending on usage. The number of significant digits does
|
|
not depend on the position of the decimal point.
|
|
</p>
|
|
|
|
<p>
|
|
<b>Representation:</b> The values are stored in 8 bytes, using
|
|
<xref href="https://en.wikipedia.org/wiki/Double-precision_floating-point_format" scope="external" format="html">IEEE 754 Double Precision Binary Floating Point</xref> format.
|
|
</p>
|
|
|
|
<p>
|
|
<b>Conversions:</b> Impala does not automatically convert <codeph>DOUBLE</codeph> to any other type. You can
|
|
use <codeph>CAST()</codeph> to convert <codeph>DOUBLE</codeph> values to <codeph>FLOAT</codeph>,
|
|
<codeph>TINYINT</codeph>, <codeph>SMALLINT</codeph>, <codeph>INT</codeph>, <codeph>BIGINT</codeph>,
|
|
<codeph>STRING</codeph>, <codeph>TIMESTAMP</codeph>, or <codeph>BOOLEAN</codeph>. You can use exponential
|
|
notation in <codeph>DOUBLE</codeph> literals or when casting from <codeph>STRING</codeph>, for example
|
|
<codeph>1.0e6</codeph> to represent one million.
|
|
<ph conref="../shared/impala_common.xml#common/cast_int_to_timestamp"/>
|
|
</p>
|
|
|
|
<p conref="../shared/impala_common.xml#common/usage_notes_blurb"/>
|
|
|
|
<p>
|
|
The data type <codeph>REAL</codeph> is an alias for <codeph>DOUBLE</codeph>.
|
|
</p>
|
|
|
|
<!--Below conref'd content fixes IMPALA-3603-->
|
|
<p conref="../shared/impala_common.xml#common/how_impala_handles_nan_values"/>
|
|
|
|
<codeblock>
|
|
SELECT CAST('nan' AS DOUBLE)=CAST('nan' AS DOUBLE);
|
|
</codeblock>
|
|
|
|
<p conref="../shared/impala_common.xml#common/example_blurb"/>
|
|
|
|
<codeblock>CREATE TABLE t1 (x DOUBLE);
|
|
SELECT CAST(1000.5 AS DOUBLE);
|
|
</codeblock>
|
|
|
|
<p conref="../shared/impala_common.xml#common/partitioning_imprecise"/>
|
|
|
|
<p conref="../shared/impala_common.xml#common/hbase_ok"/>
|
|
|
|
<p conref="../shared/impala_common.xml#common/parquet_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_8_bytes"/>
|
|
|
|
<!-- <p conref="../shared/impala_common.xml#common/added_in_20"/> -->
|
|
|
|
<p conref="../shared/impala_common.xml#common/column_stats_constant"/>
|
|
|
|
<p conref="../shared/impala_common.xml#common/restrictions_blurb"/>
|
|
|
|
<!-- This conref appears under SUM(), AVG(), FLOAT, and DOUBLE topics. -->
|
|
|
|
<p conref="../shared/impala_common.xml#common/sum_double"/>
|
|
|
|
<p conref="../shared/impala_common.xml#common/float_double_decimal_caveat"/>
|
|
|
|
<p conref="../shared/impala_common.xml#common/kudu_blurb"/>
|
|
<p conref="../shared/impala_common.xml#common/kudu_non_pk_data_type"/>
|
|
|
|
<p conref="../shared/impala_common.xml#common/related_info"/>
|
|
|
|
<p>
|
|
<xref href="impala_literals.xml#numeric_literals"/>, <xref href="impala_math_functions.xml#math_functions"/>,
|
|
<xref href="impala_float.xml#float"/>
|
|
</p>
|
|
</conbody>
|
|
</concept>
|