From: <leg...@at...> - 2003-08-04 08:56:14
|
The following comment has been added to this issue: Author: David Channon Created: Mon, 4 Aug 2003 3:55 AM Body: While doing further testing I decided to expand the scope of the functionality. All of the above plus below. NOTE: I have added Dialect functions only to Oracle thus these examples only apply to the Oracle Dialect (at the moment). Extra since last comment. * The parser can deal with no argument functions with and without parenthesis. This was required for Oracle as its current date function is sysdate with no parenthesis and other databases use empty pair of parenthesis. For example. select s.name, sysdate, trunc(s.pay), round(s.pay) from s in class Simple * Nesting of functions is now allowed. For example: select abs(round(s.pay)) from s in class Simple select trunc(round(sysdate)) from s in class Simple It is very easy to add functions to your Dialect of choice. I have attached a patch(s). --------------------------------------------------------------------- View the issue: http://opensource.atlassian.com/projects/hibernate/secure/ViewIssue.jspa?key=HB-117 Here is an overview of the issue: --------------------------------------------------------------------- Key: HB-117 Summary: Support for more SQL functions in SELECT Type: Improvement Status: In Progress Priority: Major Project: Hibernate2 Components: core Assignee: David Channon Reporter: Gavin King Created: Sun, 1 Jun 2003 7:58 PM Updated: Mon, 9 Jun 2003 6:44 AM Description: Currently, Hibernate supports exactly five (hardcoded) SQL functions in the HQL SELECT clause. They are the aggregate functions COUNT(), AVG(), SUM(), MIN(), MAX() A number of users would like to be able to specify an arbitrary SQL function in the SELECT. The problem here is that we need to know the return type of the function to be able to read it from the result set. I propose that the Dialect classes include a collection of mappings from function names to Hibernate types (eg. CURRENT_DATE -> Hibernate.DATE). That way, we can support the most commonly used SQL functions, and others can be easily added by users providing extensions to the Dialect. So, we would like to allow: SELECT CURRENT_DATE(), TRUNC(foo.amount), ...... --------------------------------------------------------------------- JIRA INFORMATION: This message is automatically generated by JIRA. If you think it was sent incorrectly contact one of the administrators: http://opensource.atlassian.com/projects/hibernate/secure/Administrators.jspa If you want more information on JIRA, or have a bug to report see: http://www.atlassian.com/software/jira |