openjpa-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kevin Sutter (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (OPENJPA-338) Remove unnecessary CAST in SQL statement for DB2
Date Mon, 27 Aug 2007 20:55:30 GMT

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

Kevin Sutter resolved OPENJPA-338.
----------------------------------

       Resolution: Fixed
    Fix Version/s:     (was: 1.0.1)
                   1.1.0

Resolved via svn revision 570240.

> Remove unnecessary CAST in SQL statement for DB2
> ------------------------------------------------
>
>                 Key: OPENJPA-338
>                 URL: https://issues.apache.org/jira/browse/OPENJPA-338
>             Project: OpenJPA
>          Issue Type: Improvement
>          Components: sql
>    Affects Versions: 1.0.0
>         Environment: Window XP, JDK 1.5
>            Reporter: Teresa Kan
>            Assignee: Teresa Kan
>             Fix For: 1.1.0
>
>         Attachments: OPENJPA-338.patch, OPENJPA338-comparsion.txt
>
>
> There were unnecessary CAST added to the SQL statements that can be removed to improve
the performance. The change will eliminate the CAST for the constants. For example, the original
query is :
> Executing query: select d from DogABS d where LENGTH(d.name) < 10
> The current generated SQL statement:
> executing prepstmnt 1335250838 SELECT t0.id2, t0.datastoreid, t0.domestic, t0.name, t0.price,
t0.total FROM DOGABS t0 WHERE (CAST(LENGTH(CAST(t0.name AS VARCHAR(1000))) AS BIGINT) <
CAST(? AS BIGINT))  [params=(long) 10]
> After the changes:
> executing prepstmnt 1749706826 SELECT t0.id2, t0.datastoreid, t0.domestic, t0.name, t0.price,
t0.total FROM DOGABS t0 WHERE (LENGTH(t0.name) < ?)  [params=(long) 10]

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message