Our Community is getting an upgrade! To get everything ready for the relaunch, we’ll be placing the site in read-only mode starting September 21st.
We really appreciate your understanding while we get things set up behind the scenes. Catch up on all the exciting details about the move here.
Need help or have questions? Drop us a line at [email protected]
Created on
09-06-2022
01:49 AM
- last edited on
04-21-2026
12:50 AM
by
GrazittiAPI
Hi
I'm looking for a list of supported ODBC functions in the HIVE ODBC driver..
I have a particular issue with { fn EXTRACT(YEAR FROM "datecolumn") } which is not recognised but a comprehensive list would be great.
Thanks
Created on 09-06-2022 04:16 AM - edited 09-06-2022 04:17 AM
@Markyd ,
Functions used in Hive queries are usually passed to the Hive service as is. I don't think the ODBC driver does any particular processing or validation of those functions. At the end of the day it's a matter of whether the Hive version you're using supports that function or not, and this depends on the Hive version being used, not the driver version.
Here you can see a comprehensive list of Hive functions and the associated Hive version where they were introduced: https://cwiki.apache.org/confluence/display/hive/languagemanual+udf
Which version of Hive are you using?
Are you using the Cloudera ODBC Drivers for Hive? Which version?
Cheers,
André
Created 09-06-2022 10:57 AM
Thanks for the info, that's very useful. It's Hive 3.1.2, Cloudera ODBC for Hive 2.6.1
Interestingly I get the following results querying though the ODBC driver (use native query = false)
SELECT extract (year FROM "datecolumn") -- accepted
SELECT { fn extract (year FROM "datecolumn") } -- ParseException
and yet
SELECT { fn year("datecolumn") } - accepted
So there may be an inconsistency in the way the driver parses the ODBC function syntax.
Mark
Created on 09-06-2022 04:16 AM - edited 09-06-2022 04:17 AM
@Markyd ,
Functions used in Hive queries are usually passed to the Hive service as is. I don't think the ODBC driver does any particular processing or validation of those functions. At the end of the day it's a matter of whether the Hive version you're using supports that function or not, and this depends on the Hive version being used, not the driver version.
Here you can see a comprehensive list of Hive functions and the associated Hive version where they were introduced: https://cwiki.apache.org/confluence/display/hive/languagemanual+udf
Which version of Hive are you using?
Are you using the Cloudera ODBC Drivers for Hive? Which version?
Cheers,
André
Created 09-06-2022 10:57 AM
Thanks for the info, that's very useful. It's Hive 3.1.2, Cloudera ODBC for Hive 2.6.1
Interestingly I get the following results querying though the ODBC driver (use native query = false)
SELECT extract (year FROM "datecolumn") -- accepted
SELECT { fn extract (year FROM "datecolumn") } -- ParseException
and yet
SELECT { fn year("datecolumn") } - accepted
So there may be an inconsistency in the way the driver parses the ODBC function syntax.
Mark