You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@hive.apache.org by "DingQiang Liu (JIRA)" <ji...@apache.org> on 2019/03/15 10:19:00 UTC

[jira] [Updated] (HIVE-21453) HPL/SQL can not SELECT Date and Timestamp type value into variable

     [ https://issues.apache.org/jira/browse/HIVE-21453?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

DingQiang Liu updated HIVE-21453:
---------------------------------
    Attachment: HIVE-21453.patch

> HPL/SQL can not SELECT Date and Timestamp type value into variable 
> -------------------------------------------------------------------
>
>                 Key: HIVE-21453
>                 URL: https://issues.apache.org/jira/browse/HIVE-21453
>             Project: Hive
>          Issue Type: Bug
>          Components: hpl/sql
>    Affects Versions: 3.1.1
>         Environment: Centos 7.1, Hive 3.1.1
>            Reporter: DingQiang Liu
>            Assignee: DingQiang Liu
>            Priority: Minor
>         Attachments: HIVE-21453.patch
>
>
> HPL/SQL forgot Date and Timestamp types when SELECT INTO variables. for example, current implement will set  null, not correct value, to variables for following case,  select_into3.sql:
>  declare v_date date;
>  declare v_timestamp timestamp(17, 3); 
> select
>    cast('2019-02-20 12:23:45.678' as date),
>    cast('2019-02-20 12:23:45.678' as timestamp)
>  into
>    v_date,
>    v_timestamp
>  from src limit 1;
> print 'date: ' || v_date;
>  print 'timestamp: ' || v_timestamp;
> The result when running :  bin/hplsql -f select_into3.sql --trace
> Configuration file: file:/hive/conf/hplsql-site.xml
> Parser tree: (program (block (stmt (declare_stmt declare (declare_stmt_item (declare_var_item (ident v_date) (dtype date))))) (stmt (semicolon_stmt ;)) (stmt (declare_stmt declare (declare_stmt_item (declare_var_item (ident v_timestamp) (dtype timestamp) (dtype_len ( 17 , 3 )))))) (stmt (semicolon_stmt ;)) (stmt (select_stmt (fullselect_stmt (fullselect_stmt_item (subselect_stmt select (select_list (select_list_item (expr (expr_spec_func cast ( (expr (expr_atom (string '2019-02-20 12:23:45.678'))) as (dtype date) )))) , (select_list_item (expr (expr_spec_func cast ( (expr (expr_atom (string '2019-02-20 12:23:45.678'))) as (dtype timestamp) ))))) (into_clause into (ident v_date) , (ident v_timestamp)) (from_clause from (from_table_clause (from_table_name_clause (table_name (ident src))))) (select_options (select_options_item limit (expr (expr_atom (int_number 1)))))))))) (stmt (semicolon_stmt ;)) (stmt (print_stmt print (expr (expr_concat (expr_concat_item (expr_atom (string 'date: '))) || (expr_concat_item (expr_atom (ident v_date))))))) (stmt (semicolon_stmt ;)) (stmt (print_stmt print (expr (expr_concat (expr_concat_item (expr_atom (string 'timestamp: '))) || (expr_concat_item (expr_atom (ident v_timestamp))))))) (stmt (semicolon_stmt ;))) <EOF>)
> Ln:1 DECLARE v_date date
> Ln:2 DECLARE v_timestamp timestamp
> Ln:4 SELECT
> Ln:4 select
>   cast('2019-02-20 12:23:45.678' as date), cast('2019-02-20 12:23:45.678' as timestamp)
> from src LIMIT 1
> Open connection: jdbc:vertica://v001:5433/test (256 ms)
> Starting query
> Query executed successfully (55 ms)
> Ln:4 SELECT completed successfully
> Ln:4 SELECT INTO statement executed
> Ln:4 COLUMN: ?column?, Date
> Ln:4 SET v_date = null
> Ln:4 COLUMN: ?column?, Timestamp
> Ln:4 SET v_timestamp = null
> Ln:12 PRINT
> date: 
> Ln:13 PRINT
> timestamp:



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)