User Tools

Site Tools


Sidebar

HPL/SQL is included to Apache Hive since version 2.0

new

What's New

Please check the Apache Hive repository for new changes: https://github.com/apache/hive/tree/master/hplsql

New HPL/SQL features:

HPL/SQL 0.3.31 - September 11, 2017

  1. SUMMARY statement (HIVE-17253)
  2. .IF statement (HIVE-13516 Teradata BTEQ compatibility)
  3. .QUIT statement (HIVE-13516 Teradata BTEQ compatibility)
  4. ERRORCODE built-in variable (HIVE-13516 Teradata BTEQ compatibility)
  5. COLLECT STATISTICS for columns statement parser (Teradata compatibility)
  6. Supporting ${name} syntax for identifiers
  7. CREATE TABLE AS SELECT
  8. DELETE ALL to TRUNCATE TABLE conversion (Teradata compatibility)
  9. FALLBACK option parser in CREATE TABLE (Teradata compatibility)
  10. QUALIFY clause in SELECT statement (Teradata compatibility)
  11. PRIMARY INDEX clause in CREATE TABLE (Teradata compatibility)
  12. Subselect statement in expressions (Bug fix)
  13. EXISTS clause in SELECT statement (Bug fix)
  14. UPDATE FROM parser
  15. INTERVAL SECOND parser
  16. Calling a package procedure/function defined in INCLUDE file (Bug fix)
  17. Casting STRING to INT, DECIMAL, FLOAT and DOUBLE (HIVE-13540 Bug fix)
  18. COPY FROM LOCAL returns HOSTCODE 2 when no files found to copy
  19. If source is a directory in COPY FROM LOCAL, always treat target as a directory
  20. Switching between connections (Bug fix)
  21. STORED AS clause in CREATE TABLE for Hive (Parser fix)
  22. WITH DEFAULT, WITH RESTRICT ON DROP, INDEX IN in CREATE TABLE parser (IBM DB2 compatibility)
  23. COPY FROM FTP lack of DIR option leads to NPE (HIVE-13721 Bug fix)
  24. FOR range - REVERSE behavior modified according Oracle PL/SQL HIVE-14382
  25. CLI fails to exit after NPE using embedded connection HIVE-17024
  26. hplsql.conn.convert.hiveconn seems to default to false, contrary to docs HIVE-17025
  27. HPL/SQL requires single quotes for string literals, resulting in surprising behavior HIVE-17027
  28. HPL/SQL function variable block is not initialized HIVE-17452
  29. Casting strings to integers in HPL/SQL differs from Hive behavior HIVE-17028
  30. HPL/SQL: Comparison if not null-safe HIVE-17029
  31. HPL/SQL: Many cast operations are ignored without warning or notice HIVE-17030
  32. HPL/SQL Addition/Subtraction only supported on integers, datetimes and intervals HIVE-17031
  33. HPL/SQL Comparisons are only supported with strings and integers HIVE-17032
  34. DATETIME data type bug fix HIVE-13923
  35. Problems handling escaped quotes within strings HIVE-14862
  36. Multiplication or division for decimal and floating point numbers HIVE-13898

HPL/SQL 0.3.17 - March 28, 2016

  1. COPY FROM FTP statement
  2. CREATE DATABASE statement
  3. DROP DATABASE statement
  4. TRUNCATE statement
  5. DESCRIBE statement
  6. INSERT DIRECTORY statement
  7. REPLACE function
  8. NOW function
  9. UNIX_TIMESTAMP function
  10. FROM_UNIXTIME function
  11. + Operator to concatenate two strings
  12. INT(n) to INT data type conversion (MySQL compatibility)
  13. TEXT to STRING data type conversion (MySQL compatibility)
  14. INT2 to SMALLINT data type conversion (PostgreSQL compatibility)
  15. INT4 to INT data type conversion (PostgreSQL compatibility)
  16. INT8 to BIGINT data type conversion (PostgreSQL compatibility)
  17. INTERVAL keyword in interval expressions
  18. AUTO_INCREMENT, ENGINE, CHARSET, COMMENT clauses parser (MySQL compatibility)
  19. BEGIN TRANSACTION and END TRANSACTION statements parser (Teradata compatibility)
  20. ALTER TABLE ADD CONSTRAINT parser
  21. WHERE clause in UPDATE clause of MERGE statement (Parser fix)
  22. Allow expressions in PARTITION BY clause of window functions (Parser fix)
  23. SET QUERY_BAND statement parser (Teradata compatibility)
  24. ENABLE constraint keyword parser (Oracle compatibility)
  25. Removing [dbo] schema when executing SQL (Microsoft SQL Server compatibility)
  26. By default, not adding FROM hplsql.dual.table to SELECT without FROM
  27. INNER keyword is optional in join (Parser fix)
  28. RAISE statement (Parser fix)
  29. Variable declaration block in procedures and functions (Bug fix)
  30. Subtraction ('-') operator (Bug fix)
  31. Multiplication ('*') and division ('/') operators in SQL statements (Bug fix)
  32. OVERWRITE keyword missed in INSERT statements (Bug fix)
  33. PL/SQL-style stored procedure without parameters (Bug fix)
  34. FOR cursor columns values (Bug fix)
  35. EXCEPTION block in functions (Bug fix)

HPL/SQL 0.3.13 - October 30, 2015

  1. CREATE PACKAGE statement
  2. %TYPE attribute
  3. %ROWTYPE attribute
  4. PART_COUNT function
  5. PART_COUNT_BY function
  6. REAL, FLOAT and DOUBLE data types
  7. BINARY_FLOAT and BINARY_DOUBLE data types
  8. SIMPLE_FLOAT and SIMPLE_DOUBLE data types
  9. BOOL and BOOLEAN data types
  10. CMP statement to compare data in tables
  11. COPY TO HDFS statement to copy JDBC query results to HDFS
  12. NULL statement (no operation)
  13. TRUE and FALSE boolean literals
  14. CONSTANT declarations
  15. Support expressions in INCLUDE statement
  16. BYTE and CHAR column length semantics (Parser)
  17. FOREIGN KEY and UNIQUE constraint in CREATE TABLE (Parser)
  18. Oracle storage clause in CREATE TABLE (Parser)
  19. NOT NULL constraint in variable declaration (Parser)
  20. XML data type (Parser)
  21. Calling stored procedures without parameters (Bug fix)
  22. AS alias in SELECT list (Bug fix)
  23. Subselect in FROM clause (Bug fix)
  24. Multiplication * and division / operators for integers (Bug fix)
  25. NOT boolean expression (Bug fix)
  26. Invoke built-in functions in lower case (Bug fix)
  27. Compare DECIMAL values, DECIMAL and integer values (Bug fix)
  28. NUMBER data type (Bug fix)
  29. Variable scope when calling functions or procedures (Bug fix)
  30. Using parameters in JDBC connection URL to specify advanced options such as Kerberos authentication (Bug fix)

HPL/SQL 0.3.11 - July 30, 2015

  1. SYS_REFCURSOR cursor variable
  2. Named parameters in procedure call
  3. SELECT @var = col, … FROM assignment syntax
  4. ALLOCATE CURSOR statement
  5. CURRENT_USER function
  6. CURRENT USER function
  7. INSTR function
  8. USER function
  9. VARCHAR(MAX) to STRING data type conversion
  10. NUMERIC to DECIMAL data type conversion
  11. NCHAR and NVARCHAR to STRING data type conversion
  12. BIT to TINYINT data type conversion
  13. Identifier conversion (“” and [] to ``)
  14. UPDATE ELSE INSERT statement parser (UPSERT)
  15. LIKE, RLIKE and REGEXP parser
  16. CUME_DIST function parser
  17. CHARACTER SET data type attribute
  18. CASESPECIFIC data type attribute
  19. DYNAMIC RESULT SETS clause parser in CREATE PROCEDURE
  20. TITLE 'alias' clause parser in SELECT
  21. WITH RETURN TO CALLER/CLIENT clause parser in DECLARE CURSOR
  22. IDENTITY clause parser
  23. SET ANSI_NULLS, ANSI_PADDING, NOCOUNT, QUOTED_IDENTIFIER and XACT_ABORT parser
  24. OPEN cursor FOR SELECT (Bug fix)
  25. SELECT INTO a DECIMAL, BIGINT, SMALLINT or TINYINT variable (Bug fix)
  26. NULL in +/- operations (Bug fix)
  27. Initialize missing parameters to NULL in -main procedure call (Bug fix)
  28. Calling stored procedure without parameters (Bug fix)
  29. Do not throw NOT FOUND exception in FETCH statement (Bug fix)
  30. Division operator for integer values (Bug fix)
  31. Assign an integer value to decimal variable (Bug fix)
  32. Catch exceptions thrown during expression evaluation (Bug fix)

HPL/SQL 0.3.7 - May 19, 2015

  1. COPY statement
  2. COPY FROM LOCAL statement
  3. DATE data type
  4. TIMESTAMP data type
  5. CURRENT_DATE, CURRENT DATE to TO_DATE(FROM_UNIXTIME(UNIX_TIMESTAMP())) conversion in executable SQL for Hive
  6. CURRENT_TIMESTAMP, CURRENT TIMESTAMP to FROM_UNIXTIME(UNIX_TIMESTAMP()) conversion in executable SQL for Hive
  7. TOP n to LIMIT n conversion in SELECT statement for Hive
  8. LIMIT clause in SELECT
  9. UPDATE statement parser
  10. DELETE statement parser
  11. MERGE statement parser
  12. Common table expression (CTE) parser
  13. ROW FORMAT DELIMITED, FIELDS TERMINATED, LINES TERMINATED clauses for Hive
  14. Default values parser in procedure parameters
  15. LANGUAGE SQL clause in CREATE PROCEDURE
  16. SQL SECURITY clause in CREATE PROCEDURE
  17. Procedure label in CREATE PROCEDURE
  18. WITH UR, RR, RS, CS clause in SELECT
  19. CREATE INDEX parser
  20. GRANT EXECUTE ON PROCEDURE parser
  21. #, @ and / characters can be used as the statement terminators
  22. CASE expressions in SQL statements (Bug fix)
  23. BETWEEN clause in boolean expressions and SQL statements (Bug fix)
  24. IS NOT NULL clause in boolean expressions and SQL statements (Bug fix)
  25. NOT IN clause in SQL statements (Bug fix)
  26. GROUP BY parser (Bug fix)
  27. ORDER BY parser (Bug fix)
  28. Windows-style file path parser (Bug fix)

HPL/SQL 0.3.1 - April 30, 2015

  1. Hive UDF to run HPL/SQL scripts from Hive CLI queries
  2. Automatically put functions referenced in Hive queries to Distributed Cache, register UDF and modify SQL statements
  3. Multiple connections to different systems from a single script
  4. ACTIVITY_COUNT built-in variable
  5. CONCAT function
  6. DECODE function
  7. TO_CHAR function
  8. TO_TIMESTAMP function
  9. CALL statement
  10. CREATE FUNCTION statement
  11. CREATE PROCEDURE statement
  12. DECLARE HANDLER statement - user-defined condition
  13. INCLUDE statement
  14. MAP OBJECT statement
  15. SIGNAL statement
  16. .hplsqlrc configuration file
  17. || operator to CONCAT function conversion in SQL queries
  18. Parser for column list in INSERT statement
  19. SET statement - assigning NULL to a variable (Bug fix)
  20. Boolean expressions and predicates (Bug fix)

HPL/SQL 0.3 - March 31, 2015

  1. TIMESTAMP literal
  2. INTERVAL expressions
  3. SQLSTATE built-in variable
  4. CAST function
  5. CHAR function
  6. COALESCE function
  7. DATE function
  8. LEN function
  9. LENGTH function
  10. LOWER function
  11. SYSDATE function
  12. TIMESTAMP_ISO function
  13. TRIM function
  14. UPPER function
  15. CREATE TABLE statement
  16. DROP TABLE statement
  17. FOR cursor statement
  18. FROM TABLE (VALUES ...) in SELECT statement
  19. INSERT statement
  20. RESIGNAL statement
  21. VALUES INTO statement
  22. VARCHAR2 to STRING conversion in CREATE TABLE
  23. NUMBER to DECIMAL conversion in CREATE TABLE

HPL/SQL 0.1 - February 27, 2015

  • Initial release